Skip to main content

Full text of "Compute! Magazine Issue 036"

See other formats


Low-Cost Multicolor Plotters For Personal Computers 



■X 



COMPUTE! 

The Leading Magazine Of Home, Educational, And Recreational Computing 



$2,50 
May 
1983 
issue 36 

Vol, 5, No, 5 

i3379 £1.85 in UK 



Commentary: 

Is Memory Expansion 

Just A 

Status Symbol? 

Crosswords: 
A Puzzle-Generating 
Program For Atari, 
VIC-20, TI-99/4A, 
And Others 



Jumping Jack: 
A Unique Game 
For VIC-20, Atari, 
Texas Instruments, 
And Commodore 64 



Instant Art On 

The Commodore 64 



BASIC Utilities 
For Atari And 
Texas Instruments 




7'.'i70"63379' 



5 



"^^•'^ ii 



Reviews 





are 




See us at Booth #1146 



©€©iii>iM/SPRIMG '83 
April 7A-29. 1983 
Georgia World Congr*i* C«n1«r and 



"NEVER' 



forgets:' 



O»orgta V/ar\6 Congr*i* C 
fha Afiantq AppOf*! Merf 
Alia mo. Georgia 



MOiS THANJUST AHOnER nSTTY MCE. 



Says who? Says ANSI. 

Specifically, subcommittee X3B8 of the American 
National Standards Institute (ANSI) says so. The fact 
is ai! Elephant^" floppies meet or exceed the specs 
required to meet or exceed all their standards. 

But just who is "subcommittee X3B8" to issue such 
pronouncements? 

They're a group of people representing a large, 
well-balanced cross section of disciplines— from 
Gcademia, government agencies, and the computer 
industry. People from places like IBM, Hewlett-Packard, 
3M, Lawrence Livermore Labs, The U.S. Department 
of Defense, Honeywell and The Association of Com- 
puter Programmers and Analysts. In short, it's a bunch 
of high-caliber nitpickers whose mission, it seems, in 
order to moke better disks for consumers, is also lO 



make life miserable for everyone in the disk-making 
business. 

How? By gathering together periodically (often, 
one suspects, under the full moon) to concoct more 
and more rules to increase the quality of flexible 
disks. Their most recent rule book runs over 20 single- 
spaced pages— listing, and insisting upon— hundreds 
upon hundreds of standards a disk must meet in 
order to be blessed by ANSI. (And thereby be taken 
seriously by people who take disks seriously.) 

In fact, if you'd like a copy of this formidable docu- 
ment, for free, just let us know and we'll send you 
one. Because once you know what it takes to make 
an Elephant for ANSI . . . 

We think you'll want us to make some Elephants 
for you. 



ELEPHANT. HEiWY DUTY DISKS. 

For a free poster-size portrait of our powerful pachyderm, please write us. 

Distributed Exclusively by Leading Edge Products, Inc., 225 Turnpike Street, Canton, Massachusetts 02021 

Call: toll-free 1-800-343-6833; or in Massachusetts call collect (617} 828-8150. Telex 951-624. 



IF YOU'RE WAITING FOR THE 

PRICE OF WORD PROCESSORS 

TO FALL WITHIN REASON ' 




l^gg^g 



nS>'^ 





P 



Everyone expected it would happen 
sooner or later. . .with 
it already has! Now ail the marvelous 
benefits of expensive and advanced 
word processing systems are available 
on Commodore computers, America's 
largest selling computer line. WordPro 
PLUS, when combined with the new 80 
column CBM 8032, creates a word pro- 
cessing system comparable to virtually 
any other top quality word processor 
available — but at savings of thousands 
of dollars! 

TM WordPro is a Registered Trademart( of Professional Soflware, Inc. WordPro was written tjy Sieve Punter. 
All specitical^ns subject lo ctvange without notice. 



New, low cost computer technology is 
now available at a fraction of what you 
would expect to pay. This technology 
allowed Commodore to introduce the 
new and revolutionary CBM 8032 
Computer. 

WordPro PLUS turns this new CBM 
8032 Computer into a sophisticated, 
time saving word processing tool. With 
WordPro PLUS, documents are dis- 
played on the computer's screen. Edit- 
ing and last minute revisions are simple 
and easy. No more lengthy re-typing 
sessions. Letters and documents are 
easily re-called from memory storage 
for editing or printing with final drafts 
printed perfectly at over five hundred 
words per minute! 



Our nationwide team of professional 
dealers will show you how your office 
will benefit by using WordPro PLUS. At 
a price far less than you realize. 



Invest in your office's future. . . 
invest in •-■■■■" : js. . . 
Cail us today for the name of the 
WordPro PLUS deaier nearest you. 



Professional Software Inc. 

51 Fremont Street 
Needham, MA 02194 
(617)444-5224 
TELEX: 95 1579 



Iifia% 
aliens jDur Kids can 

reason ivifh 
instead of destim 





This year, thousands of hids will be 
searching for the most amazing thing, 

At Spinnaker, we don't believe in the 
"hill or be killed" concept behind most 
computer games. In fact, we believe 
computer games should be instruc- 
tive. Not destructive. Butjust as 
importantly, they should be fun. 

Thats why Ih 5EARCf1 Of TflE M05T 
AMAZIMQ TfliriQ'ls designed to let your 
kids negotiate with aliens Instead of destroy- 
ing them. Because given the opportunity, 
kids enjoy using their minds. 
Ifs Amazingly Fun, 

The Most Amazing Thing is out there 
somewhere. Finding it won't be easy 
But relax, your kids will have the 
help of their old uncle 5moke Bailey 
he'll give them a B-liner (sort of a 
cross between a hot air balloon 
and a dune buggy) to use on their 
Journey They'll have to learn how to 
fly the B-liner and navigate it through 
storms and fog. But before they do 
anything, your kids will have to talk to Old 
5moke. He'll tell them about the Mire People 
and the strange language that they speak, hie'll 
also tell them to avoid the dangerous Mire 
Crabs and how to get fuel for the B-liner 

Your kids will wisit the Metallican Auction 
where they'll trade with the aliens for valuable 
chips. Your kids will then use these chips to buy 
things they'll need for their trip. And your kids 
will learn how to fly over the planet using their 
Jet pack. 

Tlie Most Amazing Thing 
holds great powers, but it will 
take great skill, persistence 
and imagination to find it 
Ifs Amazingly Educational. 
in SEARCH OF TflE M05T 
AMAZIflQ TFIIHQ is written by 
Tom Snyder, educator and 
author of the best-selling 
Snooper Troop5'"Detective 
Series. 

And like all Spinnaker games, IM 
SEARCH OF THE MOST AMAZIMQ THIMQ has real 
educational value. For instance, your kids wl 
sharpen their ability to estimate distances and 




quantities. And since they'll be navi- 
gating their B-liner, they'll become aware 
of distance, direction and time. They'll also 
develop a knack for economic and monetary 

principles through trading with the aliens. 

And they'll solve problems through trial 

and error. 
They'll learn all of these ttiings, plus they'll 

learn that nothing is impossible if you put your 
mind to it 
A Hovel Approach to Computer C5ame5. 

Besides offering your children ail of the above, 
in SEARCH OF THE MOST AMAZIHQ THING gives 
ttiem an opportunity to develop their reading 
skills. Because included with the game is Jim 
l^orrow'5 new novel The Adventures of Smoke 
Bailey,' So your children will have hours of fun 
reading the book or playing the game. And 
they'll be learning at the same time. 
Parental Discretion Advised. 

If you're a parent who would rather see your 
kids reason with aliens than destroy them, 
you've got plenty of reasons to 
ask your local software retailer 
for IM SEARCH OF THE MOST 
AMAZING THING. It's compatible 
with Apple," IBM,' Atari,'" and 
Commodore 64'" computers. 
And it offers so much fun you'll 
probably be tempted to play it yourself 
Or you can write us directly at; 
Spinnaker Software, 215 First Street 
Cambndge, MA 02142. 

You'll find this is one computer game that 
won't alienate you from your 
children. 






sPiTfffan^R 



We make learning fun. 



Appie. iBMarwl fttjrJ arc 'C^srefPd irademarks of App4c Cornputei; (re. Iniefnawjnal Business Hacnrf>es Ctno afW Aldf i, int. re^pecttvely Ccmmo^Kn'C tAi^A Irademarh cf Cornrrodoie Eleciiwiics Limtted 
© l9B!5oinfMker5oflwJri?Catn AH i-inh!^ rf«wrv«1 




..^^^is_, 



A 



•S8o 















«^°'?;3*^: 



gi.o, 



















„ota.f**«« 



May 1983 Vol. 5, No. 5 



FEATURES 



20 The New Low-Cost Printer/Rotters _ Tom R, Halfhill 

34 Jumping Jack Paul Burger 

44 Atari's New Add-On Computer For VCS 2600 Gome Machine Tom R. Halfhill 

-48 One On One Chris York 

62 Computers And Composition Joan Vesper 



EDUCATION AND RECREATION 



68 Deflector Frank Tyniw 

76 Crosswords William Loercher 

• 90 Checkers Lester W. Cain 

97 Progromming Multicolor Characters On The VIC Bill McDonnell 

102 Atari Storshof Matthias M. Giwer 

143 Guess That Animal Ralph Kennedy 



REVIEWS 



112 Atari CX85 Numerical Keypad Charles Brannon 

116 Three VIC Cartridge Gomes By Creative Software Harvey B. Herman 

118 Hescount For PET/CBM And VIC Steve Leth 

122 Micro-Systems' VIE Cartridge: VIC To IEEE Interface Karl Kel ley 

126 Microteoch Teacher's Aide For The Atari Mike Kinnamon 



COLUMNS AND DEPARTMENTS 



8 The Editor's Notes Robert Lock 

12 Readers' Feedback The Editors and Readers of COMPUTE! 

28 Computers and Society David D, Thornburg 

32 The Beginner's Page Richard Mansfield 

58 Questions Beginners Ask Tom R. Halfhill 

132 The World Inside The Computer: Software For Toddlers Fred D'Ignazio 

140 Friends Of The Turtle David D Thornburg 

156 Machine Language: Numeric Output, Parti Jim Butterfield 

198 Insight Atari Bill Wilkinson 

218 Programming The Tl: Graphics C. Regena 

252 Guest Commentarv: Is RAM Memory A Status Symbol? Barry Miles 



THE JOURNAL 



146 
-^50 
154 
- -161 
162 
166 
176 
184 
192 

— 204 
211 
214 
222 
226 
234 
235 

— -237 
238 
244 
249 
250 
255 
260 

128 
129 
265 
276 
281 
283 
288 



VIC Kaleidoscope Alan W. Poole 

Instant Commodore 64 Art Bob Urso 

Graphics On The Sinclair/Timex Derek Stubbs 

PET/CBM POP Michael W. Schaffer 

Bootmaker For VIC. PET. And 6d M. G. RyschkewJtsch 

Basic Atari BASIC Sorts E. P. McMohon 

PET Super Editor Craig Disston 

VICSTATION: A "Paperless Office" Joel Peter Anderson 

Screen Printer For The Atari Wedge Michael E. Hepner 

Commodore64 Video- A Guided Tour, Part IV Jim Butterfield 

VC File Cose JohnStilwell 

Ttie Atari Musician Barry Belian 

VisitingTheVIC 20 Video, Parti Jim Butterfield 

General-Purpose Data Base, Part II Jeffrey 3. Vohay 

TCON: The Apple Writer Processes Programs Michoe I Ginsberg 

Apple Fast Sort John San/er 

64 Odds And Ends David Martin 

Atari Times B, B. Garrett 

Versatile Data Acquisition With VIC Doug Horner and Stan Klein 

Optimizing PET Speed Michael W. Schaffer 

Tl BASIC One -Liners - Michael A Covington 

Disassemble To Printer Or Disk For Atari MorkChosin 

The Apple Hi-Res Painter James Totten 



A Beginner's Guide To Typing In Programs 

How To Type COMPUTEi's Programs 

News & Products 

Calendar 

CAPUTE! Modifications Or Corrections To Previous Articles 

Product Mart 

Advertisers Index 



NOTI: See poge 129 
before typing In 
programs. 



GUIDE TO ARTICLES 
AND PROGRAMS 



V/64/AT/T1 

AT 
ATA//64/AP 



V/AT/AP 

P/AT/AP/riA/ 

64 

V 

AT 

sn 



AT 

V 
P/V 

V 
AT 



AT 
Tl 



V 
64 
S/T 
P/V/64 
PA//64 
AT 

P 

V 
AT 
64 

V 
AT 

V 

cm 

AP 
AP 
64 
AT 

V 

P 

Tl 
AT 
AP 



AP Apple. AT Atari P PET/ 
CBM. VVIC-20, O OSL C 
Radio Shock Color Com- 
puter. 64 Commodore 64, 
S/T Sinclair ZX-81. Tl Texas 
Instruments. 'Al! or several 
oftheobove. 



COMPUTE! The Journal tor Progressive Compuling (USI^; 537250) is published 12 times each year by Small System 
Services, Inc., P.O. Box 5406, Greensboro, NC 27403 USA, Phone: (919)275-9809, EditoriisI Offices are located at 
505 Edwardia Drive, Greensboro, NC 27409. Domestic Subscriptions: 12 issues, $20.00. Send subscription orders or 
change of address (P.O. form 3579) to Circulation Dept., COMPUTl! Magazine, P.O. Box 5406, Greensboro, NC 
27403! Second class postage paid at Greensboro, NC 27403 and additional mailing of fices. Entire contents copyright 
© 1983 by Small System Services, Inc. All rights reserved. ISSN 0194-357X. 



TOUFREE 

Subscription 

Order Line 

800-334-0868 

lnNC91»-27S-9eO» 



I COMVIE I 



Introditcifig Snooper Troops 

detective series. 

Edticatiofial games tliat turn ordinary 

homes into Sherlock homes. 



Where can you find educational 
gannes that your kids will really enjoy 
playing? 

Elementary, my dear Watson. From 
Spinnaker 

Our Snooper Troops detective games 
are fun, exciting and challenging. And 
best of all, they have real educationa 
value. 5o while your hids are having 
fun, they're learning. 

As a Snooper Trooper, your child 
will have a great time solving the 
mysteries. But it will take some 
daring detective work. They'll 
have to question suspects, talk to 
mysterious agents, and even search 
dark houses to uncover dues. 

The Snooper Troops programs are 
compatible with 




m 



% 




Apple,® IBM® and 

Atari® computers and 
provide your kids with everything they 
need: a SnoopMobile, a wnst radio, a 
Snoopflet computer, a camera for taking 
Snoopshots and even a notebook for 
keeping track of information. 

Snooper Troops detective games help 
your children learn to take notes, draw 
maps, organize and classify information 
and they help develop vocabulary and 
reasoning skills. All while your kids are 
-» having a good time. 

So if you want to find educational 
games that are really fun, here's 
a clue: Snooper Troops games are 
available at your local software 
store, or by writing to: Spinnaker 
Software, 215 First Street Cam- 
bridge, MA 02142. 



\Nq make learning fun. 



© 5plnnaher Software Carp 1982 Apple, iQM and Aian aie registered tradsrvjrka of rtppie Com&jttr , Inc . tnic! national Busin«s P^achines Co/p Jimj f>itan, \nz . respecttvely 



Spinnakerls early learning 
games will help make your children 
as smart as you tell eyeryone they are. 




^« 



Your kids are pretty smart 
After all, they're /our kids. 

Spinnaker can help make them even 
smarter With a iine of educational software 
that kids love to play 

Spinnaker games make the computer 
screen come to life with full color graphics 
and sound, And they're fun. Lots of fun. But 
they also have real educational value, 

Some of our games help exercise your 
child's creativity Others improve memory 
and concentration. While others help to 
improve your child's writing, vocabulary 
and spelling skills. 

And every Spinnaker game provides 
familiarity with the computer and helps your 
children feel friendly with the computer 
Even if they've never used a comput- 
er before. 

And Spinnaker games are compati- 
ble with the most popular computers: 
Apple,® Atari® and IBM® 

Our newest game, KinderComp'" 
(Ages 3-8) is a collection of learn- < 
ing exercises presented in a fun 
and exciting manner 




Rhymes and Riddles 
(Ages 4-9) is a letter guess- 
ing game featuring kids' 
favorite nddles, famous say- 
ings and nursery rhymes. 
Story Machine'" (Ages 
5-9) lets children write their 
own stories and see them 
j. come to life on the screen. 
' And PACEMAKER™ lets your 
children create their own funny 
faces and make them wink, smile, 
wiggle ears (not your kids' ears, 
the ears on the screen), etc. 
And we're intro- 



ducing new games 
all the time. 

So look for Spinnaker 
games at your local 
software retailer, or by 
writing to: Spinnaker 
Software, 215 rirst St., 
Cambridge, MA 02142. 
And show your kids 
how smart their par- 
ents really are. 





SJ^nff)MK£ff 



We make learning fun. 



Appte, IBM and Atarj are fegntered tr«3eiriarh5 of Apple Computer, inc. InterndUoinai Buiinei^Machinei Coip af\d Alan. Inc , respectiweli/ 

Commodore 6^ is a trademarKotCommodofe Electronics Umlted. 



EDITORS NOTES 



The Eighth West Coast Com- 
puter Faire was another 
triumph for organizer Jim War- 
ren. It's truly a consumer show, 
and an exciting one, given that 
many of us who don't have a 
great deal of time for shows any 
more continue to make time to 
get to this one. The Civic Center 
was packed (not only were the 
hallways full of booths this year, 
but the freight unloading area 
as well). No one's quite sure 
why the Faire doesn't head for 
San Francisco's spacious new 
Moscone Convention Center, 
but we suppose there must be a 
reason. There is a reason, isn't 
there, Jim? 

The Faire provides the op- 
portunity for us to meet many of 
our readers and authors, giving 
us the chance to tie names to 
faces. The excitement of the show 
always stays with us for weeks. 

Response to our call for 
editors in the January issue of 
COMPUTE! has been excellent, 
and we're quite pleased to an- 
nounce the addition of several 
new staff members. Since you'll 
become much more familiar with 
them over the months ahead, 
through both the book and maga- 
zine divisions here, we thought 
we'd tell you a bit about their 
backgrounds now, and their 
own personal computers as well: 

Orson Scott Card, Editor, 
COMPUTE! Books Division 

Science fiction fans will already 
know Scott. The rest of you 
should know that he won the 
Campbell Award as Best New- 
Science Fiction Writer of the 
year in 1978. And he was a four- 
time runner-up for the Hugo 
Award. Having also been an 
editor, Scott brings a wealth of 

8 COMPUTl! MOV1983 



experience to COMPUTE! Boolcs. 

(Atari 800.) 

Gail Walker, Production Editor 
After several years of work in 
technical editing, communica- 
tions, and corporate publishing 
and research in Texas and Iowa, 
Gail has joined our staff with 
primary responsibility for super- 
vision of copy editing and coor- 
dination of scheduling and 
planning between our editorial 
and production departments. 
(Commodore 64.) 

Tony Roberts, Assistant 
Managing Editor 
Tony specializes in schcciuling 
writers, bringing COMPUTE! the 
skilled training developed after 
many years of daily newspaper 
work, both as a reporter and as 
an editor. Tony's excitement 
about the personal computer 
revolution brought him to COM- 
PUTE!, where he'l! be assisting 
with the review of submitted 
manuscripts, editing, and 
helping supervise editorial 
scheduling. (TI-99/4A; TRS-80.) 

Dan Carmichael, Assistant Editor 
After spending several years 
programming mainframe com- 
puters and developing docu- 
mentation, Dan moved from 
IBM Assembler to "VIC-20 
Assembler." His experiences 
and enthusiasm for the VIC led 
him to COMPUTE!. VIC owners 
can look forward to his monthly 
column in the new COMPUTEI's 
Gazette, and COMPUTE! readers 
should watch for regular contri- 
butions in these pages. (VlC-20.) 

Stephen Levy, Assistant Editor 
Stephen came to our attention 
via a series of excellent articles 
he'd written for COMPUTE!, After 
fifteen years as a public school 



teacher, he decided to bring his 
skills to us. His sensitivity to the 
needs of the average computer 
user make him a valuable addi- 
tion to our editorial staff. 
(Atari 800.) 

Random Bits 

Rumor has it that we'll see Atari 
introducing a revised and ex- 
panded version of the 1200, with 
more features. Looks aren't 
evcn/fltiu^. The recent moves by 
Texas Instruments to lock up the 
cartridge "marketing" market 
would seem to pose at least one 
clear danger. Rather than locking 
up that market, they may simply 
have it all to themselves. TI has 
refused to license the rights to 
their graphics ROM (GROM), 
and thus is the only manufac- 
turer capable of producing TI 
cartridges. We suspect that 
smaller vendors may choose to 
support other computers rather 
than attempt to resolve the maze 
of dealing directly with TI. On 
the other hand, they do have a 
far more effective marketing 
reach than independent vendors 
usually do. 

As the price of the VIC-20 
and Commodore 64 charge 
downward, we hear that Com- 
modore will be placing more 
and more emphasis on the de- 
velopment of the 64 market. 
And Commodore dealers, many 
of whom are upset over the 
placement of the 64 into the 
mass distribution chains, will be 
forced to concentrate their ener- 
gies on the new P and B series 
machines. 






AN INFORMATION MANAGEMENT SYSTEM 
FOR YOUR COMMODORE COMPUTER 



InfoPro is a menu driven and interactive "information management" 
system for tlie Commodore 8032 computer, InfoPro uses "friendly" 
screen prompts that "guide" you from function to function. Tliis 
makes InfoPro unusuaily easy to learn and just as easy to operate. 

For Mailing List applications InfoPro can print up to 8 labels across 
and even has a built in "structure" with fields already preset. This 
structure can easily be changed to fit many other types of office jobs. 

Another extremely powerful feature of InfoPro is Super Scan. The 
Super Scan feature acts like an "electronic filing cabinet" and pro- 
vides the user with almost instantaneous access to the data stored 
in a file. The powerful Report Generator allows you to "select" infor- 
mation for printing based on up to 5 different parameters or criteria 
and to perform various math functions. 

Another powerful and indispensable feature is InfoPro's ability to 
interact with the WordPro family of word processing programs. This 
provides the user with a "link" from the area of data information 



WordPro and InfoPro are registered trademarks of Professional Software 



management to the area of word processing, allowing the user to 
manipulate, sort, and select data by certain criteria, which can then 
be inserted into "personalized" letters, documents, overdue notices, 
etc. InfoPro will also allow you to ADD, DELETf; or CHANGE your 
information "fields" any time you wish. This means that as your 
business changes, InfoPro has the flexibility to change with it. 

As with ali Professional Software products, InfoPro comes complete 
with a professionally written and fully-tested user oriented manual. 
InfoPro also includes a program ROM, and InfoPro System Diskette. 



Start managing your information today. 

Call us today for the name of the Professional Software dealer nearest 
you. 

Professional Software Inc. 

51 Fremont Street 
Needham, MA 02194 
Tel: (617) 444-5224 
Telex: 951579 



Pubhsher-'Edifor-ln-Chief 
Publisher s Assistant 



Robert C lock 
AJce5.Wotfe 



Senior Editor 
Managing Editor 
Assistant Managing Edilor 
Production Editor 
Features Editor 
Technical Edilor 
Pj'ogram Editor 
Editorial Assistant 
pTog ram m i n g Assista nts 

Administrative Assistants 



Assistont Copy Editor 
Copy Assistant 



Associate Editors 



Contrlbijfing Editor 



Richard Mansfield 
Kathfeen E Martinek 
lony Roberts 
Goii Walker 
TomR Holthtll 
OttisRCowper 
Charles 6?anr>on 
KothyYokal 
Pctnck Pa Irish 
Gregg Peefe 

ViCki Jennings 
lauralvlcfadden 
CoroJ Ecfdv 
Juonita lewis 
Becky Hall 
IvlQfy Parker 
Jim Butterlield. 
Toronto, Conodo 
Harvey Herman. 
Greensboro, NC 
Fred D'Ignazio. 
2117 Carter Rd.S.W. 
Roonoite. VA 2dOl5 
David Thomburg 
). Box 1317. L05 Altos, CA 94022 

BillWilkinson 



COMPUTE' s Book Division 

Editor 

Assistant Editor 

Artist 



Orson Scott Cord 
Step hen Levy 
Janice Farv 



Art Director/Production tyjanager Georgia Popadopoulos 



Assistant 
Artists 

Typesetting 
Illustrator 

Promolion Assislont 
Pr od uct io n Assistant 



frma Swom 
De Potter 
Jean iHend^ix 
Terry Cash 
Harry Btair 
Todd Heimarck 
Do>r?ees 



Associate Publisher/Nationol 
Advertising Soles Wonager 

Advertising Coordinator 
Advertising Accounts 
Sales Assistant 



AndyMeehan 
Patti\MI]iams 
Bonnie Valentino 
Rosemarie Davis 



O per o lion s/Customer 
Service Manager 
Assistants 

Dealer Coordinator 

Assistant 

Assistants 



Shipping & Receiving 



Carol Lock 
Potty Jones 
Shannon Ivteyer 
Fran Lyons 
Gail Jones 
Christine Gordon 
Cassandra Robinson 
Dorothy Bogan 
Shoion Minor 
Chris Potty 
Rhonda Savage 
Liso Fiohorty 
JimCoword 
Loriy O'Connor 
Chris Cain 



L>ata Processing Manager 
Assistant 



Leon Stokes 
JOon Compton 



Accournting Manager 
Bookkeeper 
Accounting Assistants 

Assistants 



W. Jej-ry Day 

Ellen Day 

Lindo i^oquemore 
Doris Holt 

liufh Granger 
AnrKJ Harris 
EmiEieCovll 
Anne Ferguson 



Small System Services. Inc pubfisrtes 

COMPUTi!Bool(5 

Corporote off Ic*: 
505 Edwofdio Drive. 
Greensboro. NC 27409 USA 

Mailing cKidress; COMPUH! 

Post Office Box 54D6 
GreenslDoro. NC 27403 USA 

Telephone: 919-275'9S(» 



Robert C Lock President 

W. Jerry Day. Vtce- President and Comptroller 

E, Norman Granom, Vice-President ond Generol Counsel 

Kattileen E Mortirek, Assistant To The President 

Sonjo Whrtesell. Executive Assistant 



Coming In June 

How To Buy Ttie Rtgiit Printer 

TI-99/4 Structured BASIC 

Atari Player/Missiles Made 
Simple 

The New, Low-Cost Printers 

Two Extraordinary Games: 
The Hawkmen Of Dindrin 
And Asfrostorm 

PET Machine Language 
Uncompactor 

Data Searcher For PET, VIC, 
And C-64 

Apple Shape Generator 

TR$-80 Color Computer: 
The Printer Connection 



Subscription Information 
COMPUTE! Circulation Depf. 
P.O. Box 5406 
Greensboro, NC 27403 

TOLL FREE 

Subscription Order Line 

800-334-0868 

In NC 919-275-9809 



COMPUTE! Subscription Rates 

(12 Issue Year]: 

US (oneyr.)S20 

(two yrs.) S36 
(three yrs.) S54 



Canada and 
Foreign Surface Moll 

Air 
Europe, AusSralio 
Middle East, Central 
America and North Africa 
South Americo, South 
Africo, Far East 



$25 



$38 



$48 
$68 



Advertising Sales 




The Grttelnian 
Company' 

/AJDolton 

J <-RuthWiiriams 

le OiHelmart^ 
Company / 

Sharon Brbdie 

.;Joe Porter/ 

215-646-5700 

NY Metro /12 567-6717 



COMPUTE! Home Office 

/ Harry Blair 
Southeastern Sales 
Representative 
919-276-9809' 



In British Columbio, Canada, 
fiiaska or Hawaii call 408-354-5553, 
ESewtiere in Canado or outside 
North America call 919-275-9809. 




COMPUTE! 
Home Office 

Andy Meehan 

National Advertising 

Sales Manager 

919-276-9809 



Phoebe Thompson 
and Associates 

101 Church Street 
Suite 13 

Los Gotos, CA 95030 
PHOEBE THOMPSON 



Phoebe Thompson 
and Associates 

2556 Via Tejon 
Polos Verdes Estates, 
CA 90274 
JOANN SULLIVAN 



GB & Associates 

P.O. Box 335 
Libert/ville, IL 60048 
GORDON BENSON 



COMPUTE! 
Home Office 

505 Edwardia Drive 
Greerisboro, NC 27409 
HARRY BLAIR 

Soulheastern Sales Represenfative 



The Gittelman Company The Gittelman Company Address all advertising materials to: 



Statler Office Building 

Suite 518 

20 Providence Street 

Boston. MA 02116 

AL DALTON 

RUTH WILLIAMS 



Summit Office Center 
7266 Summit Avenue 
Fort Washington, PA 19034 
SHARON BRODIE 
JOE PORTER 



Patti Williams 

Advertising Production Coordinator 

COMPUTE! Maga2ine 

505 Edwardio Drive 

Greensboro, NC 27409 



Authors o) manuscripts warrant that all materials submitted to COMPUTE! ore originol rnalerials witli full 
ownership rights resident in said duttiors. By submitting articles to COMPUTE!, authors acknowledge that 
such rraterials, upon acceptance for publication, become the exclusive property of Small System Ser- 
vices. Inc. No portion of this magazine may be reproduced in any form without written permission from the 
publisher. Entire contents copyright S 1983, Small System Sendees, Inc. Rights to programs de^loped and 
submitted by authors are explained in our author contract. Unsolicited mateiiols not accepted for publi- 
cation in COMPUTE! will be returned it author provides a self-addressed, stamped envelope. Progroms (on 
tape or disk) must accompany each submission. Printed listings are optional, but helpful Articles should be 
furnished as typed copy (upper- and lowercase, please) with double sioocirvg. Each page of your article 
should beor tlie trtle of the article, date and name of the author. COMPUTE! oisumes no liobility for errors in 
articles or advertisements. Opinions expressed by authors are not necessorily those of COMPUTE!. 



PfT. C6H WC-20ond Commooofe M are TrodetTioiits of 

Commodoie Buane« MochtfTes. Ire. ona'o* Cofnmodote £iectTc«ci Lirrslwl 

AppJe li a hcxismaik of Apple CoTiputef Company. 



ATAra IS a !ia<temarV pt Almi. Iric 

TJW/dA I! a ffodefTiofV of te^as iftsfiuiyionts Inc 

fioOO SrtocIf Color Compulel h a Ircdemotlc of Tondy. Inc 



10 COMPUTC! May 1983 



^ I II s i 




3 exoepiional books joJrnhe DATAMOST library. 



Here is a series of easj^^^»d, easy to - wonder w^^|^^einr^^S^r1ritimidated 
use, easy Igj^ideigta ri creiTn ^ s^ ^i^ i g l] :^ ^JiyJbaJiaougmorprogramrTiirig! 
teach you iiw f 3^ 31ffl iO i a i i tJ teLii&tfM r:^:r^ , ^ 

programs blvTour computer. And you "ff^ywwant to get the very most out of 
don't have to worry about irrelevant V^^^ ^PP'^' IBM-PC or TRS-80 then you 
material which has no interest for youpS^^^ want HOW TO WRITE A PRO- 



because there are three specific volumes. 
One for the Apple,* one for the IBI\/1-PC: 
and one for the TRS-80.* 
In each of these bool<s author Ed Fauil< 
leads you through your favorite com- 
puter and takes the mystery out of writing 
programs for it. As you proceed, interest- 
ing chapter by interesting chapter, you'll 



©RAM. Before you're past Chapter 2 
you'll be programming. By the end of the 
book you'll be willing to tackle business 
programs, personal use programs and 
even games and adventures! $14.95 
Get your copy now. Available at computer 
and book stores, or: 



iiiy unapici uy iiucicauiiy i.-iid|jiei, yuu II |\j (213)709-1202 

9748 Cozycroft Ave,. Chatsworth, CA 91 311 

•Apple is a trademarK of Apple Computer. Inc.- IBM-PC is a trademarii of IBM Corp. TRS-80 is a irademark of Tandy Corp 
ViSAMASTEHCHARGE accepted S2.00 shipping handling chafge. (California residents aad 5' ,-= saies tax 1 



Reston Pabfishirtg Company, Inc. 
A Prentice-Hal! Company 
Reston, Virginia 
Toil free (800) 33&-0338 



READERS' FEEDBACK 



The Editors and Readers of COMPUTE! 



What Does A Light Pen Do? 

I own a VIC-20. In COMPUTE! I see advertisements 
for a new light pen for the VIC. I am not sure what 
a light pen does exactly. What does it do? Do you 
recommend buying one? 

Rich Cope 

The display on a video screen is not nearly ns static ns it 
appears. It is actually "re-draivn" many times per sec- 
ond by an electron beam. Moreover, it is not a solid 
picture, but rather a slack of closely spaced horizontal 
lines like a ji^saio puzzle made up entirely of long, thin 
rectangular pieces. An important characteristic is that 
the beam always "draws" the entire screen, and at a 
constant speed. Tims the drawing always takes the 
same amount of time, whether the display is bla)ik or 
filled with an intricate pattern. 

The light pen is a light detection device. It "sees" 
the electron beam as it draws the lines across the screen. 
By checking to see hoiv much time passes between ivhen 
the beam starts drawing the picture and when the pen 
detects the beam, the computer can determine how far 
the beam has drawn, and thus where on the screen the 
light pen is positioned. 

A light pen is useful for pointing to things on the 
screen. One of the nuist common uses for the pen is to 
select items from a list simply by pohiting at the desired 
item. Another demonstration we have seen involves 
"playing" a piano by pointing zvith the light pen to the 
desired "keys" on a keyboard display. Light pens also 
provide you with an easy way to "sketch" on the 
screen . 



Tl Clock 

Since there is no realtime clock built into the Ex- 
tended BASIC on the TI-99/4A, is there any coding 
scheme to simulate one? 

John J. Mahoney 

You can insert a FOR/NEXT loop wherever you wish 
to make some time elapse. The number of times the loop 
is executed can be varied depending on the timing re- 
quirements of your program. First choose some arbitrary 
number of times that you wish the program to run 
through the FOR/NEXT loop. Then time the results 
when the program is executed. If the time that transpires 
when the program is run is too long, simply usea smaller 
limit in the loop. This method depends on actual pro- 
cessing time, so if you add or delete program statements, 

12 COWUIB MOV 1983 



be sure to adjust the FOR./NEXT limit accordingly. 

For example, see how long FOR T= 1 TO 
5000:NEXT T takes to finish. ^Then change the 5000 
limit to suit your needs. 



NiJfekop Decoded 

In your review of the latest games from Niifekop 
Software (February 1983, p. 140), you write: "the 
word Niifekop, according to the firm's early ads, 
has a Druid origin, and means putting an extraor- 
dinarily large amount into a small pocket or en- 
closure, possibly through the use of magic." 

This must have been tongue-in-cheek. Surely 
you recognize "poke fun" spelled backwards. 

J. R. Thompson, Jr. 

Gary Elder, President of Niifekop, responds: 

We lucre completely shocked, but it's true! We're 
amazed, as always, at the visionary powers of the 
Druids. 



Cassette Drive Risk 

I have set my VIC on a timer. The PLAY key on 
the tape drive is left depressed. When the system 
powers up I would like for it to load and run the 
program on the tape. How do I do this? 

T. H. Homer III 

If would be better to avoid leaiuug any of the tape-moving 
keys (REW, F.FWD, or PLAY) down while the unit is 
turned off. This can cause significant damage to a tape 
machine. 

The tape is pulled through your drive at a uniform 
rate. The computer would not be able to load your pro- 
grams from the tape drive if the rate deviated much 
from the norm. Inside the tape player are a capstan a}ui 
a pinch roller (see illustration). When the PLAY button 
is pressed, the capstan revolves and the pinch roller 
holds the tape firndy against the capstan. The roller is 
made of hard rubber, but left pressed against a motionless 
capstan, it can be deformed. 

/\ .-az==E!». PINCH ROLLER 




I 



CAPSTAN 



NEW FOR 1983 ^ 

acE 




MICROCOMPUTER GAMES, Inc. 

A Division of 

THE AVALO^ 
GAME Co, 

4517 HARFORD ROAD 
BALTIMORE, MD 21214, (301) 254-5300 



HH GAME 


With Cassette For: With Oiskelte For: 


GAME 


Tns-80 


ftPPLE 




IftS 








IBM 
PC 


PflfCE 
UCH 


TITLE 


NO. 


liiii 


II 


usm 


Color 


lilll 


II 


vm 


The Alien 


43B52 












48K 






28.00 




4Z201 


48K 


4eK 


40K 












30,00 


Close 


42251 










4SK 








35.00 


Assault 


42252 












48K 






35.00 




42253 














48K 




35.00 


Fredericksburg 


42751 










32K 








35.00 


Computer 


43452 












48K 






26.00 


Facts In 


43453 














4aK 




26.00 


Five 


43454 
















64K 


26.00 


Space 


44101 






32K 












20.00 


Station 


44152 












48K 






25.00 


Zulu 


44153 














48K 




25.00 


Vorrak 


45053 














48K 




26.00 


Gypsy 


45201 






16K 












21-00 




45253 














32K 




26,00 


Flying 


45301 






16K 












26.00 


Ace 


45353 














32K 




31.00 



For credit card orders, call 
TOLL FREE: 800-638-9292 

. . . ask for operator CO 




T-^- 



^^-f^: T-f^^ />-^^. 7^-f~~^ ^,ri^-^ / 




/ / 



r-^ 



Look what 
for your VIC 20. 



/ 



'tS. 



Fast action, Complex strategies. 
Interesting characters. Supe^~f-^' 
rior sound effects. Multiple levels ' 
.^f play. 
/ These are the things you-vyant 



^o» 



«tOH 



-^ 



Irom your VIC 20 



TM 



■i^-y-. 



They're also the things you get 
fronn Tronix. From the people who 
brought you Swarm!, Sidewinder 
and Galactic Blitz. 



\} 



;^r^ And now, there's more. 7 ^ 
lj---l /Now Tronix brings you the same 
■T^..._^warding rapid-fire excitement in 
^three brand-new game cartridges. 
Each one is something dif- 
ferent. Something new. But they all 
"^y — /have one thing in common, t'---^^ 
They're all designed to bring ^ 
out the best in your VIC 20. 

You shouldn't settle for any 
thing less. _ 



/ 



Jimmy Huey. ' , 

In a predatory world '^"^ 
of killer worms, dragons, stalk- p 
ers, pods and fly traps, the scor- V~-^, 
pion prowls the maze in search 
of sustenance. Frogs and their - 
eggs mean survival to the scorpion. 
But they can also mean instant^ 

deathj (Suggested {etail$39.95J. 



/ 




-^^ 7W^^7-S^-/ ^>^i^ ■,^^/ 




/■^:^^/--^ 



we have in store 



4a 



^L 



r-^J 



-«l/_ 



K ?4 



4 J 



S. 



^; 



yy}!^ 



By 
Thomas Kim. 



•'^ Your helicopter gurv- 
ship hovers over the enemy's ~ 
-..military bases and missile emplace-. 
^'ments. Your mission is to destroy _^^/ 
.-Jtherlr But as the sky fills with smart 
/jBombs and anti-aircraft fire, there's 
T^tess and less room for a wrong 
Ipvel (Suggested retail $39.95) ■ 



■Corey Ostman. 
Deep in the earth, a 
fortune awaits. But the dark 
_ , passageways are filled with peril as- 
"^well as profit. Runaway boxcars. -^ 
Crashing boulders. A claim jumper 
with murder in his eyes. Be careful. 
But be quick— oxygen is in short 
supply! (Suggeste.d retail $39.95 



■J 



8295 South La Cienega Blvd., Inglewood, CA 90301 
Look for Tronix games in your nearest store. If you can't find them there, write to us. 



VIC 20'" IS a tradcnark ol Commooore Electrcnics Lici 



i>iuw.iliii1 



From time to time i/ou'H get a shoppiug cart at the 
market with a wheel that has been similarly damaged. 
In that situation, you're in for a noisy, bumpy trip 
through the store. A bad pinch roller would have far 
more serious effects: you would begin to have frequent 
load errors. 

If you luant a program to start running at a certain 
time, just set the internal clock. You don't need to 
involve the tape player at all. For example, to start a 
program that wakes you up with VIC nnisic in eight 
hours: 

10 TI$="000000": REM 00 hours/ 00M 

INUTES/ 00SECONDS 
20 IF VAL(TI$) = 80000 THEN 40 
30 GOTO 20 
40 REM YOUR MUSIC PROGRAM STARTS H 

ERE 

The VIC uses about a nickel's worth of electricity 
every 24 hours if you leave it on continuously. It's 
probably its own best tinier. 



How To Use Atari's Player/Missile 
Features 

I am an Atari 800 owner. How do you use player/ 
missile graphics? So far, in at least ten publications 
I have read about enabling it and that's where they 
stop. 

Ely Manero 

Player/ missile graphics are a powerful, but complex 

tool. There are a nuifiber of things to learn before you 
can take advantage of all the options that PI M graphics 
make available to you. It's rather like learning BASIC 
itself; there's no way to master it in an hour. Your best 
bet might be to look over and practice with the numerous 
PIM articles in the new COMPUTEI's First Book Of 
Atari Graphics. The book was designed to teach Atari 
graphics, one step at a time. You might find one of Bill 
Wilkinson's contributions to that book, "Introduction 
To Player/ Missile Graphics," especially helpful. See the 
COMPUTE! Books ads elsewhere in this issue. 



VIC PILOT Decimal Division 

I teach a Computer Programming course to 8th 
graders at our school, Castillero Middle School, 
San Jose, California. We have seven Commodore 
PETs and a VIC-20. The language, of course, is 
BASIC. 

But now we are also using PILOT .... from 
COMPUTERS December 1982 issue. Our students 
are finding it quite interesting to write programs 
in PILOT that they had previously written in 
BASIC. • 

One of my students, Mike Jennings, was 
intrigued with the notion that PILOT was integer 
only. He wondered whether it would be possible 

16 COMPUm Moywes 



to have PILOT do decimal division. The result 
was a program he wrote which does just that. 
The user is prompted for two numbers, and for 
the number of decimal places desired. One small 
problem is when the division works out evenly: 
that is, when the decimal terminates. In such cases 
an additional zero is printed. 

I thought it was a pretty good effort for an 
8th grader with only a semester of programming. 

Lawrence E. Corina 

70 T: 



1 *AGAIN 


2 T: 


3 T:2 NUMBERS? 


4 C:#T = 


5 A:#A 


6 I:#A = 333 


7 JY:*END 


8 A:#B 


9 T:CARRY OUT HOW MANY PLACES? 


10A:#L 


12 »MAIN PART 


14I:#A<#B 


16 TY;.; 


18JN:»A>B 


20CY:#A = #A*10 


22C:#C = #A/#B 


24C:#T = #T + 1 


26C:#D = #C»#B 


28C:#E = #A-#D 


30C:#A = #E*10 


32 T:#C; 


33I:#T = #L 


34JY;»AGAIN 


35I:#C = 


36JN:22 


38JY:*AGAIN 


44* A>B 


46C:#C = #A/#B 


48 T:#C.; 


50C:#D = #B»#C 


52C:#E = #A-#D 


54C:#A = #EnO 


56 J:35 


60 »END 



64 Tape Control 

I'm a beginning programmer; I'm getting a big 
headache trying to solve what originally seemed 
to be a simple problem. My program instructs the 
user of a Commodore 64 to press fast forward on 
the Datassette. When it senses that the button is 
down it prints OK. After a time interval I want 
the Datassette turned off automatically by the 
computer. I've tried every POKE possible and 
haven't got one that works. I thought that this one 
would work; 

POKE(l),PEEK(l)AND 39 

... but it doesn't. 

How can I do this? 

Jim Butterfield replies: 

You're close. Two more things, and you'll have every- 



Bmderbufld Presents 
fln Arcade Adveoturc : 




A.E.'s, produced by an industrial giant to control pollution on Earth have 
slipped quality control. They attack relentlessly in waves from the sky. Your 
mission: to drive them farther and farther into space. With each successful 
defense, you are transported to another, then another more distant 3-D 
environment. With these progressively difficult scenes, A.E. delivers the 
ultimate challenge. 

Never has a computer game required 

such precision, such timing. You'll be 

hooked from the very start. A.E. (it 

means sting ray in Japanese) provides 

such enduring satisfaction on every 

level that it will become your personal 

standard of excellence in computer 

gaming. 




Now available for Apple II, 
II+, lie and Atari 400/800t 



^AppJe and Alan are regtslered irademarks ol 
Apple Compuier. Inc.. and Atari, inc. respeciively. 



^BroderbundSoftujare 

Brodertwnd Software, Inc. 1938 Fourth Street San Rafael, CA 94901 (415)45&«424 



thing workiiig. 

Fir:;t: ilic motor logic is iinvrted, so to tun} the 
motor off, you must turn the control bit (value 32) 
on. To turn bits on, you need an OR function rather 
than an AND. So your code will be: POKE I.PLEKCl) 
OR 32. 

Seco)id: the motor is also cojitrollcd bi/ an interlock, 
address 192 on the VIC and Commodore 64. If this 
location contains a zero, you can try to turn the motor 
off ... but it will be turned right back on again. You 
must set the interlock to any non-zero value after tlie 
motor has been turned on. Then, and only then, your 
POKE to address 1 will shut Ihe motor off. 

The interlock location, 192, will switch back to 
zero automatically -when the user releases the Datassette 
key. If this kei/ is still dozen, you can turn the cassette 
}notor back on again very easihf. just release the interlock 
with POKE 192,0. 

So your procedure is asfolloxos: 

1 . Wait for the user to press the appropriate cassette 
key 'which will cause the NU)tor to start. Then POKE 
192,1. 

2. When llic appropriate time has elapsed, POKE 
l,PEEK(-l)OR32. 

Zeroing Into VIC TInymon 

Why does Jim Butterfield say that a SYS to any 
memory location containing a zero value will in- 
voke Tinymon? I would have thought that a SYS 
to the memory location containing the first byte 
of Tinymon would be the only way to make it run. 

Roy Underhill 

The zero i}ieans sometbi)ig special to the 6502 micro- 
processor chip. In its language (machine language), the 
zero is a BRK (break). That instruct io)! forces control of 
the computer to go to an address contained i)i the "break 
interrupt vector." This is a two-byte-long "pointer" 
ivhich you can change to point to any address. On the 
VIC, this vector is located in addresses 790 and 791 
(decimal). If you make it pioint to the entry point in 
Tinymon (entry points are not ahoays the first byte), 
then any time you SYS to a zero, the computer will 
"break" to the entry and Tinymon will be off ami 
running. 

True Random Numbers For TI-99/4 

Regena writes about randomness on the 99/4 in 
her column in the February issue. I would like to 
share some discoveries I have made on this subject 
with your readers. 

First of all, there seems to be some confusion 
about how the RANDOMIZE statement works in 
TI BASIC and TI Extended BASIC. As Regena 
pointed out, if you do not use this statement in 
your program prior to using the RND function, 
you will receive the same sequence of numbers 



each time you run the program. All your friends 
around the country with 99/4's will gel the same 
numbers as you do, too. When the computer en- 
counters the RANDOMIZE statement, it puts you 
back at the beginning of a new list of pseudo- 
random numbers. 

That term "pseudo-random" is important. 
The 99/4 A User's Reference Guide makes a point to 
mention that the RND function "gives you the 
next pseudo-random number in the current se- 
t]uence of pseudo-random numbers." If you use 
the RANDOMIZE statement once, then, you may 
or may not get the same sequence of numbers. 
However, using the RANDOMIZE statement 
over and over again in the program just puts you 
back at the beginning of another list. In reality, 
there seem to be certain numbers that the con> 
puter prefers to put at the top of its lists, so in 
games there may be some numbers that are never 
generated because you never make it far enough 
up into the current list to get that number. The 
point is, repeating the RANDOMIZE statement 
does NOT niake your program more random. 

I have found that the only way to make the 
computer generate a totally unpredictable set of 
numbers is to use the RANDOMIZE statement 
once at the start of the program, then when you 
need to wait for the user to press a key, do this: 

100 CALL KEY(0,K,S) 

110Z=RND 

120 IF S"0 THEN 100 

Since the time it takes a human to press a key will 
not be exactly the same each time the program is 
used, the computer will read down the list of 
pseudo-random numbers an unpredictable 
number of places. 

Steve Davis 



TRS-80 Color Computer Group 

I would like to inform your readers through your 
"Ask The Readers" column, that there is now a 
TRS-80 Color Computer Users Group in Mil- 
waukee, WI. For more information write to: 

CoCo-MUG 
c/o Tom Fandre 
2420 Mistv Lane 
Waukesha, WI 53186 

(414)542-0600 

Steve Koszuta 



COMPUTE! welcomes questions, connnents, or 
solutions to issues raised in this column. Write to: 
Readers' Feedback, COMPUTE! MflX"='"t'' ^'-O. 
Box 5406, Greensboro, NC 27403. COMPUTE! 
reserves the right to edit or abridge published 
letters. " © 



nMTffY 



compuTER onmE 

IS nOlU R CARTRIDGE. TOO! 



FORTHEHTflRHOO/800' 




CHOPUFTER! 

Brilliant animation, dazzling graphics and world-class 
arcade action have made Choplifter the favorite of tens of 
thousands of Apple II and Atari 400/800 owners. Previously 
released only on disk, Choplifter is now available in a con- 
venient plug-in ROM cartridge. 

Now you too can unleash the 
hero witiiin you as you pilot your 
rescue chopper behind enemy lines, 
saving your comrades from enemy 
fire, 

Choplifter's detailed, lifelike 
3-D graphics will give you a sense 
of realism unmatched by any other 
game available today 



cmnifTURi 



^r BrdbwiI Sofuun 



SO IS RITIERICR'S mOST RDDICTIflG 



SERPtmiNE! 

■111 ^WWW lllk.^ ^ 

Yet another Braderbund hit, Serpentine thrusts 

you into a terrifying age when mighty serpents 

ruled the earth! Serpentine will hold your inter- ^ „ZI!lL._ \ 

est through hundreds of plays . . . challenging B "/~"~~ 

you 3t every level. B '«'"**"«*««« 




Join the legion of Choplifter heroes and brave Serpentine warriors 
and discover a whole new world of arcade action. 

Brederbund products are available at your retailer or by writing to: 

^BfrjdertMjndSoftujarB 

1938 Fourth Street, San Rafael CA 94901, (415) 456-6424 

•Atari 400/800 and Apple II ars regisiereil trademarks of Atari, Inc. anii Apple Computer, Inc., fespectiwly. 



The New Low-Cost 
Printer/Plotters 



Tom R Halfhill, Feotures Editor 



Recent price hrcaktltrou^'ihs are niakiii^'^ color prinierl 
plotters as ensi/ to afford as tlie iieiv low-end Uouie 
computers,. Here's a roundup of the ninjor nwdels now 
nppcarin;^ on the market for Atari, Commodore, Radio 
Shack, and Texas Instruments computers. 



If you're a person who likes to doodle on your 
memo pad at work, or in the? margins of your notes 
at school, then this article is probably for you. 

Especiallv if vou sometimes doodle in color. 
And if you envy the graphic designs on this page. 
And if you wish there were more to computer 
graphics printouts than black-and-white dot- 
matrix dumps. 

Multicolor graphic designs, drawings, charts, 
and graphs have long been possible with 
peripheral devices known as plotters. Plotters are 
closely related to printers. The main difference is 
that printers create an image by striking the paper 
with a print head, while plotters actually draw on 
the paper with ballpoint or felt-tip pens, just as 
people do. Of course, because plotters are con- 
trolled by computers, they can draw with greater 
precision than the finest human draftsman. 

Although plotters have been around for years, 
they haven't seen much use on home/personal 
computer systems because of their high cost, 
typically several thousand dollars. But that's about 
to change, thanks to a new generation of econom- 
ical printer/plotters (so-named because they can 



print text in addition to plotting figures). For ex- 
ample, the four-color designs illustrating this arti- 
cle were produced by the new Atari 1020 Printer/ 
Plotter, which is just coming on the market for 
only S299. Similar low-cost models for other home 
computers have been introduced by Commodore, 
Radio Shack, and Texas Instruments. 

A Revolver Loaded With Pens 

Three main features separate printer/plotters 
from ordinary printers: the ability to dra^v con- 
tinuous lines in anv direction, the abilit\' to draw 
in several colors, and the ability to .scroll the paper 
both forward and backward as they draw. 

Printers are designed primarily for printing 
■ out text and are severely limited when it comes to 
graphics. So-called dais\rwhee\ or letter-quality 
printers ~ those that stamp their characters on 
paper with a typewriter-like striker - are limited 
to the characters on their striking wheels or balls. 
By printing patterns of X's, asterisks, periods, or 
so forth, they can create crude figures or charts. 

Dot-matrix printers are a little more flexible. 
Their print heads have a row of tiny pointed wires 
which are "fired" at the paper in certain patterns 
to form characters out of small dots. In addition 
to regular alphanumeric characters, most dot- 
matrix printers also have special graphics charac- 
ters. Generally these are smaH shapes or blocks 
which can be grouped together to make figures. 
With special programs, most dot-matrix printers 




20 COMPUTl! M0]y1983 




Can you meet the challenges 
of 3 totally unique 3-D screens? 

TRION I. THE 3-D CANYON. 

TRION 11. THE 3-D TUNNEL 
TRION III. THE 3-D BARRIER. 

You're gonna need all the ammo, all the 
fuel you can bag to survive the deadly 
incendiary ambush ...the dangerous 
drone freighters. . . all the dynamic thrills 
of non-stop 3-D excitement. So hold on... 
Trion's gonna grab you! 



arcadeouauty 
high-res'graphics 

100% machine LANGUAGE 
32K PLUS'JOYSTICK 
DISK OR CASSETTE 

FROM THE MAKERS OF HOT UPS, 
BUMPERBALL. AND SPACE ACE, 

m-RATED GAME OF 1982* 

$39.95. SEE YOUR DEALER OR 

ORDER DIRECT SOON FOR IBM'! 



W 3-D GAME! 



London 
Software 

374 WildwoodAve., Piedmont, CA 94611 

PHONE ORDERS: [415} 893-1090 VISA/MC 

Please sad St.SOpaslago and hamlling. 
Calif, residents add 6.5% sales lax. 

•COMPUTEH DEALER MAGAZINE, January. 1983 
• Atari 400/800 and IBM are reglslertd trademarks of 
Atari Inc. and IBM 
<^ 1983 by London Software 



DESIGNED BY GREG YOUNG. FOR ATARI 400/800." AND YOU. 




THE NEW ATARI 1200XL HOME COMPUTER 
MAKES SOPHISTICATED GRAPHICS AND 
SOUND SO EASY TO PROGRAM, 

ONLY the new ATARI 1200XL Home Computer combines cus- 
tom microchip technology with 64K RAM computing power to de- 
liver graphics and sound capabilities that are so easy to program. The 
ATARI 1200X1 has 11 graphics modes and 5 text modes. (The Commo- 
dore 64 and Apple ll-e have only 2 graphics modes and 1 text mode.) 
Additional text and graphics modes allow users to easily program 
sophisticated graphics effects with relatively few commands, taking 
full advantage of the 256 color variations available. The sound capa- 
bilities of the ATARI 1200XL are also easy to program. Four distinct 
"voices" spanning 3V2 octaves are controlled by a separate microchip, 
leaving the principal microprocessor chips free to perform other tasks. 

ONLY the ATARI 1200X1 offers a keyboard featuring 8 pro- 
grammable function keys controlling 16 functions in a 64K computer 
(That's twice as many as the Commodore 64). Four new function 
keys enable you to lock and unlock the keyboard electronically disable 
the screen DMA for faster processing time, generate European lan- 
guage or graphics characters, turn the keyboard sound on and off or^^ 
access the one-touch cursor control. The unique user-definable "help" 

THE NEW 

O A Warner Communications Company © ms. awi, inc. aii rights reserved. 



key permits users to self-test ROM, RAM, audio-visual circuitry and 
l<eyboard functionality or call up assistance within complex programs. 
For even more help, Atari gives you a toll-free number to call for 
product and technical information (800) 538-8543; in California 
1-(800) 672-1404. 

ONLY the ATARI 1200XL offers you a home computer com- 
patible with virtually all ATARI Computer peripherals and software 
(compatibility that other new computers like the Commodore 64 don't 
offer). There are over 2,000 programs and seven programming lan- 
guages currently available for tfie ATARI 1200XL New programs like 
AtariWriter'" and languages like ATARI Microsoft BASIC, Assembler 
Editor, PILOT, Pascal, ATARI BASIC, Forth, and Macro Assembler offer 
you even greater programming challenges and flexibility 

ONLY Atari puts so much more in the new 1200XL Home 
Computer so you get so much more out of it. 




AIARri200xL 



HOME COMPUTER 



also can produce screen dtinips - direct dot-by-dot 
copies of images on the computer screen. The 
limitations are that the screen dumps are only 
black-and-white, and have low resolution, since 
they are composed of masses of dots. 

Plotters work on an entirely different princi- 
ple. Expensive plotters usually have an arm, 
guided by tracks or rails, which grasps one 
ballpoint or felt-tip pen at a time. Beneath the 
arm, the sheet of paper {or plastic transparency) 
is held flat and stationary on the plotter. Under 
computer control, the arm can slide in any direc- 
tion on its guide rails to draw continuous lines. 
When a line is supposed to end, the arm lifts the 
pen off the surface a fraction of an inch, moves to 
where the next line is to begin, and sets the pen 
back down to resume drawing. To change colors, 
the arm automatically lifts the pen, moves it off 
the paper, sets it in a rack, and picks up another 
pen from the rack. Some expensive plotters have 
racks with a dozen or more different-colored 
pens. 

The new low-cost plotters for home com- 
puters take a somewhat different approach, but 
the result is the same. To cut costs, the complex 
movable arms, guide rails, and racks of pens are 
eliminated. Instead of drawing lines by moving 
an arm over flat, stationarv paper, the new plotters 
hold the pen stationary and roll the paper beneath 
it. To make it possible to draw lines in any direc- 
tion, the paper roller can rotate forward and back- 
ward, unlike conventional printers. And the low- 
cost plotters can lift the pen off the paper and set 
it back down to draw lines of anv length similar 
to their more expensive cousins. 

The new plotters also have a simpler way of 
changing pen colors. Instead of using a movable 
arm to pluck pens from a rack, they store four 
very small, colored pens in a rotating barrel. The 
barrel looks something like the cylinder of a re- 
volver, except that there are spring-loaded pens 
where the bullets would be. To change colors, the 
plotter rotates the barrel, and a plunger presses 
the correct pen into contact with the paper. 

As you might guess, the whole operation 
requires lots of precision, and it's amazing to see 
such devices sell for only a tew hundred dollars. 
To further cut costs, all the new plotters use nar- 
rower paper (about 40 columns wide), and are 
limited to four colors at one time - although the 
pens are sometimes interchangeable so that many 
different colors are possible. 

The Patience Of A Monk 

Now that you know how a plotter draws pictures, 
you might be wondering how a printer/plotter 
prints text. After all, it doesn't have a conventional 
print head. 

The answer is simple, though the method is 



not. A printer/plotter draws characters the same 
way it draws pictures: one line at a time. It's fun 
to watch. Tediously but precisely, with the pa- 
tience of a medieval monk, the plotter scrolls the 
paperback and forth under the pen to carefully 
scribe each letter, number, and symbol. Since 
printing is a lot slower than typing, printer/plotters 
take a long time to generate text. Although the 
characters come out looking sharper than a dot- 
matrix printout, you probably won't want to use 
a printer/plotter for listing many programs - unless 
you, too, have extraordinary patience. 

To control a plotter, you can write a program 
in BASIC or in another language that may be avail- 
able for your computer (Logo, PILOT, etc.). The 
svntax varies, but generally you specify the X 
(horizontal) and Y (vertical) coordinates for each 
line; or, in the case of languages with turtle 
graphics, a direction and distance (i.e., RIGHT 
90:FORWARD 10). To print text, vou use a PRINT- 
type statement similar to BASIC'S "PRINT." 
Printer/plotters have built-in character sets, so 
you don't have to issue volumes of commands to 
form each tiny character. Some printer/plotters 
even have several different-sized character sets to 
choose from. 

Besides drawing pretty graphics designs, 
printer/plotters also are widelv used for creating 
illustrative figures, charts, and graphs. It's usually 
easv to mix graphics and text. 

In alphabetical order, here's a roundup of the 
new geiieration of low-cost printer/plotters for 
popular home computers: 

Atari 1020 

The Atari 1020 uses standard AV2 inch-wide roll 
paperand has text modes of 20, 40, orSt) characters 
per line. The text modes are selectable from the 
computer keyboard and can be freely mixed with 




Atari T020 
Printer/Plotter 



charts, tables, and figures. In the 40-column mode, 
it prints at 10 characters per second (cps). There's 
also an international character set to complement 
the one on the new Atari 1200XL computer. The 
1020 is styled to match the 1200XL and to fit neatly 



2i COMPUTC! May 1983 



GamSS ^011 tdVk take 
^ home to your munnny. 




» orrcf Commodore 64. T/-K5/4A. Rndto Shack _ . 
^ j^Apptc //, and IBM-PC ore trademarks oj Atari. Jnc, 
rfon- JnlifrnuffontiJ, /nc Tt-xas Inalrumetits, Inc.. Tandif Cor- 
1, Applt Comptiter, trie,, and IBM, Inc. respectively. At! 
'^ame liHen ore tmdeinorhs oJ Synapse Software. 



cassette and cartridge 
for the Atari 400/800 
computers, m hase and other titles avail- 
able soon for the Commodore 64^ the VIC-20t 
Ti-99/4A, Apple ii. Radio Shack Color Computer^ 

and IBM-PC. 



synapse 



5221 Central Avenue *200, Richmond, CA 94804 • (415) 527-7751 



atop its case. 

Under program control, the printer/plotter 
can draw to any vertical/horizontal coordinates 
with its four-pen print head. The standard colors 
are black, red, blue, and green. FA^hl other colors 
also will be available. Four buttons on the plotter 
control the power, pen color, pen change, and 
paper feed. 

Atari says the 1020 should be available this 
spring for S299. 

Commodore CBM 1520 

The CBM 1520, announced at the Winter Con- 
sumer Electronics Show (CES), uses standard 4'/2 
inch-wide roll paper in a 5-inch carriage. Pro- 
totypes had a four-color print head with black, 
purple, green, and red pens. 




Commodore CBM 1520 
Printer/Plotter 



Prototypes also appeared to have two differ- 
ent-sized text modes. High-resolution figures are 
possible with the plotter's ability to "step" up to 
480 positions horizontally and 999 positions verti- 
callv- The plotter has a power switch on the side 
and three topside buttons for paper feed, color 
change, and pen change. 

The 1520 is designed primarily for the VlC-20 
and Commodore 64 computers, hut could be in- 
terfaced to other mociels as well. 

Commodore says the 1520 should be available 
this spring for $199.95. 

Radio Shack CGP-115 

The CGP-115, already on the market, uses stan- 
dard 4'/3 inch roll paper and comes with red, bkre, 
green, and black pens in its four-color print head. 
Like Commodore's CBM 1520, the Radio Shack 
plotter can step up to 480 positions horizontally. 
However, there is no limit to the vertical steps. 

There are two text modes - 40 or 80 columns 
at 12 cps. Under program control, other size char- 
acters can be drawn and even rotated. Topside 
buttons control the power, paper feed, and color 

26 COMMJTi! May 1983 




Radio Shack CGP-115 
Color Graphics Printer 



selection. 

TheCCP 



15 sells for $249.95. 



Texas Instruments HX-1000 

The HX-1000 differs from the other printer/plotters 
in that it is portable and uses narrower 2'/4 inch- 
wide roll paper. In the text mode, it can print up 
to 18 standard characters or 36 compressed char- 
acters per line, but eight other sizes are available 
as well. It prints at 12 cps. 

The four-color print head comes with black, 
blue, red, and green pens. Ten control codes sent 
from the computer control various functions of 
the plotter. There is also an on-off/reset switch 
and a paper feed button. 

The HX-1000 is powered by five AA-size (pen- 
light) batteries or an AC adapter/charger. It is 
designed to work directly with Texas Instruments' 
two newest computers, the under-$100 TI-99/2 
and the portable Compact Computer 40. The plot- 
ter also works with the TI-99/4A if connected 
through a $59.95 Hex-Bus interface. 

Texas Instruments says the HX-1000 should 
be available this spring for S199.95. The Hex-Bus 
Interface should be available shortlv thereafter. 




Texas Instruments 
HX-1000 Printer/Plotter 




§) 1W3 Sptclra VKleO. inc 



THE PERSONAL COMPUTER 
YOU'LL GROW INTO, NOT OUT OF. 



SPECTRAVIDEO SV-318 COMPUTER COMPARISON CHART 




SPECTRA VIKO 
SV-llB 


APf-LEIPPLUS 


ATARI UO 


COMMODORE H 


NCCiUi 


HAOIOVUCk 
COLOR COUPUTCR 


BASE PRICE 


$299 


Jl.HO 


U99 


»sss 


»» 


$3» 


COMPUTING K»WEn FEATURES 














BUHTlNflOM 


32K 


TJK 


lOH, 


»K 


16K 


GM 


EXPANDABLE 70 


96K 




*2K 


NJA 


3?K 




BUILT iNETIEhDED UlCflOSOFT- BASIC 


VE5 


YES 


ADDITIONAL COST 


NO 


YES 


*OD<TI0NALO0ST 


BUILT IH RAW 


J3K- 




len 


«4K 


IfiK 




EX PAN DM LC TO 


!«H-- 


64K 


46K 




];k 




KEYBOARD FLATUmtS 














NUMBER or KEYS 


71 




61 










10 


WA 










$E>ECLAL WORD PnOCESSIHC 










NO 


NO 


GEnERAIEB anAI^HlCStFROH KEYBOARD! 


TES 


NO 


VES 




NO 


NO 


UPPEflAO wen CASE 


YES 


UPP£^01>JL¥ 


YES 








CAMEJAUDtO FEATURES 














SEPARATE CARTRIDGE SLOTS 


TES 






NO 


NO 




BUILT IN JOYSTKH 


VES 


NO 


NO 


NO 






COLORS 


i& 


15 


l?B 


le 


9 




RESOLUTION [PkELSJ 


»&« 192 


zaot iu 


320 Ji 19? 


220>:?D0 


?«*I93 




SPRITES 


32 




A 


R 


FifA 


WA 








« 








OCTAVES PER CHANNEL 






A 




B 




A a^tt ENVELOfE 


ViS 


NO 


NO 


YES 






PERIPKCfUt. SPECIFICATIONS 














CASSETTE 




1 CHANNEL 


J CHANNEL 


t CMAfJNEL 


tCHAMNEL 


1 CHANNfl 


AUDIO to 






VES 


NO 


NO 


NO 


BUIL.TtNHIC 




MO 










DISK DRIVE CAPACirY 




UHn 


96A 


ITCH. 


n;a 




(LOW PROFILE) 


YES 


NO 






































CPW 30 


YES 


NO 


NO 


NO 










'" Apple II can Koal modified 40 o« BO co4ut>o CP/M 



MmosaJt <5 ] 'ffli^TpBj tr*Jerrurk pi Miciosnn Cwpwitan 
CP.'M >i 1 liMfmifV ot OigitJ Beseifch inc 



FOR UNDER $300 " ^^Limi/lffEO ^ 




P6R50NAL COMPUTGR 

SS>(CIRAViDEO.IMC.3'5W 3?thSI, NY.NV KXJia 



SadlY, many personal computers will become lomorroWi 
junk in the attic- TheSV-3lSisonelf)ot will not. Because as 
YOU get bettei, II gets better. It does so because ollts 
capabililY and expanaablllty—tiott\ tar beyond tt\ose ol 
any other affordable computer. 

CAPABILI1Y. me SV-3IS Isn't just more capable. Its much 
more capable^ A/o ofher computer of even twice the price 
combines all these extraordinary teatures: 32K HOM 
expandable to 96X: 32K SAM expandable to \44X: 
Extended Microsoft Basic (the Industry standard): even 
Standard CPIM SO-column capability so you can 
I mmedia tely utilize over 10.000 existing software 
programs. The SV-3!S o/so has a unique built-in joystlcKJ 
cursof control— an immeasurably useful feature when It 
comes to playing your favorite video game. 

eXPANDABiLlTY. As you become more and more skillful 
with computers, you'll love hQwtheS'y-3iB "stretches" to 
meet your demands (and actually leads you In fascinating, 
new directions). For one thing, all eleven ol our Important 
peripherals are avallabte Immedialely. With most other 
models, you have to wail months. For another, the SV-318 Is 
beautltully designed to Interface with new options as they 
become available, 

AFfQRDABIUTY. The SV-3IB IS not only eminently afford- 
able. It's the first true bargain of the computer age! Besides 
home budgeting, business applications, word processing, 
programming and selt-teachlng. the S'y-3t8 is the best 
entertainment value in town. Hot only can you use It wilh 
your TV to play hundreds of different video games, you 
can also use your SV-3IB with a TV as a drawing tablet or 
music synthesizer. In piay, as in work, the SV-3I& will 
continually expand to meet your potential. 

Whether you're just wetting your toes in computers, or 
fully osall on the waters, the SV-318 is a computer that will 
serve you lor many, many years. You see, we believe that 
even In the computer age, you don 7 become on object ot 
real value unless you're around tor a while 



Computers And Society 



Dovid D Thornburg, Associate Editor 



The Robots Are Coming 



Technological advances seem to be hitting the 
consumer marketplace with such force and fre- 
quency that we are in danger of becoming numbed 
by their announcement. It is hard, for example, to 
believe that the personal computer field is only a 
few years old - or that powerful languages like 
Logo have become available to the home com- 
puterist only in the past two years. 

As we watch these developments eclipse 
each other, we might ask ourselves what will hap- 
pen next? What technological development could 
possibly hit the consumer marketplace with such 
force that it might displace our current technology 
ical wonders as the benchmarks of our age? 

Well, I've given it a lot of thought, and I have 
an answer. 

Domestic robots. 

By now, many of vou have seen news stories 
on the Heath HERO-l'and the Androbot TOPO. 
In watching these contraptions on the evening 
news, you might have said to yourself, "So what?" 
After all, we see robots in the movies all the time, 
and the use of robots in dangerous or boring as- 
sembly tasks has been going on for years. 

The reason domestic robots are important is 
that, like the personal computer, they are designed 
for personal use by people in their own homes. 
This means that, for the first time, we will 
individually take control of robots and shape them 
to our personal needs, just as we did with 
computers. 

The robots used by industry are reminiscent 
of the computers used by business - large 
specialized machines designed to perform clearly 
defined tasks with efficiency. 

In more ways than one, the domestic robot in 
1983 reminds me of the home computer in 1978. 
For example, in 1978 there wasn't a whole lot one 
could do with a personal computer. The software 
industry was in its infancy (residing mainly in 
spare rooms and garages), but the people who 
bought computers then were pioneers - brave 
souls who not only were the first to experience 
the computer revolution, but who also helped to 

23 COMPUIR MCIV1983 



make it happen either by writing software them- 
selves or by helping to identify those areas where 
software was needed. 

All of which brings me to 1983 and the begin- 
ning of a new industry. 

Where Are They Headed? 

The domestic robot, as this is being written, is 
largely a tool for discovery, experimentation, and 
entertainment. The Heath product is oriented to 
the technical educational market as a tool for learn- 
ing about robotics per ac. The buyer of the Heath 
HERO not only gets to assemble the device (thus 
learning about everything from microprocessors 
to wheel drive systems), but also gets to program 
the robot at the most basic levels. The Androbot 
TOPO, on the other hand, is a fully assembled 
device designed to be operated with turtle 
graphics commands from a separate computer 
using BASIC or Logo. 

Because of philosophical differences in the 
design of these two prtiducts, they will serve the 
needs of different audiences. I expect the Heath 
product to have more appeal to the hardware 
tinkerer - the sort of person who built his or her 
Northstar Horizon from a kit. TOPO may appeal 
more to application-oriented users. 

At first glance, TOPO looks about as useful 
as an overgrown, radio-controlled Big Trak. It is 
sent commands to move forward and backward 
by some amount, or to turn to the right or left by 
some angle. It is thus a physical analog to the 
display turtle associated with languages like Logo 
and Atari PILOT. 

In order to understand my enthusiasm for 
domestic robots, you almost need to experience 
them for yourself. There is something quite ap- 
pealing about being able to write a program that 
sends a three-foot tall robot on a tour of your 
house. After watching a robot in action, you can't 
help but come up with lists of applications for 
these devices. 

In the few weeks 1 have had TOPO, I have 
used it to help teach computer programming to 




Last Night, CompuServe TurnedThis 

Computer Into A Travel Agent For Jennie, 

A Stock Analyst For Ralph, And now, 

IT'S Sending Herbie To Another Galaxy. 



NO MATTER WHICH COMPUTER 

YOU OWN, WE'LL HELP YOU GET 

THE MOST OUT OF IT. 

If you've got places to go, 
CompuServe can save you time and 
money getting there. Just access the 
Official Airline Guide Electronic 
Edition— for current flight schedules and 
fares. Make reservations through our 
on-line travel service. Even charter 
a yacht through "Worldwide Exchange." 

If your money's in the market, 
CompuServe offers a wealth of 



prestigious financial data bases. 
Access Value Line, or Standard and 
Poor's. Get the latest information on 
40,000 stocks, bonds or commodities. 
Then, consult experts like IDS 
or Heinold Commodities. All on line 
with CompuServe. 

Or if, like Herbie, intergalactic 
gamesmanship is your thing, enjoy the 
best in fantasy, adventure, and space 
games. Like MegaWars, the ultimate 
computer conflict. 

To get all this and more, you'll 



need a computer, a modem and 
CompuServe. CompuServe connects with 
almost any personal computer, terminal, 
or communicating word processor. 
To receive an illustrated guide to 
CompuServe and learn how you can 
subscribe, contact or call: 

CompuServe 

Consumer Information Service 

2180 Wilson Road. Columbus, Ohio 43228 

800-848-8199 

In Ohio, call 614-457-8650 



An H&R Block Company 



third graders and to dance to a piece of music I 
play at the piano. These aren't earthshaking ap- 
plications, but I've had TOPO only a short time. 

Where are robots like TOPO headed? There 
are many applications that come to mind. When 
equipped with a simple cart, robots can help 
handicapped people carry things from room to 
room. If properly programmed, a robot can "walk" 
around the house each night "looking" for in- 
truders. (I can't imagine very many intruders 
who would be willing to tangle with a robot.) 

Clearly, just as with personal computers, the 
entertainment possibilities are endless. You could 
design games for groups of children that use a 
robot as one of the players - truly picking a child 
at random, for example. A robot that can be pro- 
grammed to move pseudo-randomiy in a room 
can be used for another game in which the children 
divide into two teams. One team has the goal of 
always staving to the "north" of the robot, while 
the other must always stay to the "east." As the 
robot moves, the children must move with it. 
Any children caught outside the safe zone are 
"out" until the next game. 

The more I think about it, robots may help 
counter the fear I have heard that computers are 
turning our children into sedentary creatures. If 
this were true (and I tend to doubt it), robots would 
help reverse this trend. 



What I find interesting is that the applications 
1 mentioned (carrying things, roaming the house, 
playing games) are all feasible with today's robots 
and just a little bit of software development. 

And what about the future? Will we still look 
on robots as the foreboding evil mechanisms des- 
tined to eliminate the less-than-perfect carbo- 
naceous beings that created them? 

I think not. 

The personal computer made computing less 
intimidating to us by placing the power of this 
machine in the hands of individuals. So it will be 
with robots. By creating a domestic robot industry/ 
we all benefit, even if we choose not to use robots 
ourselves. 

As with computers, users and non-users alike 
should learn about robots. 

Why? 

Because they are there. 

Next Time 

Next month we will continue to explore this topic 
by looking at the promise and potential of the next 
generation of robots, androids that adaptively pro- 
gram themselves in response to their environment. 

In the meantime, you might want to read 
Isaac Asimov's book /, Robot. It will be moved off 
the fiction shelves soon. 



Low Cost 
nLight Pen 



7 




Free yourself ol many keyboard 
strokes. Touch our Light Pen to 
your TV screen and draw, paint 
mullicolored pictures or pick from 
a menu. Its that easy. 

Now you can make your 
Commodore Vic 20, Vic 64, Atari 
400/800 or Apple II come alive. 

LP-10" low cost no switch, Ught 
Pen is active at all times. 

LP-15 High Resolution, high 
speed Light Pen with push switch 
to activate signal. It is super- 
sensitive and can conirol the 
Curser 6 inches trom screen. 



LP-10 
LP-15. 



. S39.95 
S 11 9.95 



Interface card required for Apple II with 

LP-10 & 15... 599-95 

All Ught Pens are sold complete with 

Demo Cassettes & Instructions- 

TECH-SKETCHiNc 

FAIRFIELD, N,J, • 201-227-7724 

Visa & Master Charges Accepted 

Dealers & Distributors Welcome 

Commodofe, Alan, Apple a'e Regisierea Trademarks 








i-^VAV5^\V^iTO 




FILE -FAX is the 

easiest- to- learn, simplest-to-use 
DBMS available todav! Designed as a 
"filing system" for the businessman or 
hobbyist, file-fax quickly accesses 
records, retrieving information at 
exceptionaily high speeds. 

FILE- FAX can be used to keep track of 
a wealth of information — about people, 
places, dates, events. It has an 8-level 
sort, wide ranging search capability, 
and a powerful report generator Use it 
for inventory control, customer files, 
mailing lists, purchase records, and 
more — you are limited only by your own 
imagination. 

FILE-FAX will run on your APPLE II or 
11+ , Atari BOO, IBM-PC, NEC PC-8001, 
Commodore 64, Osborne, and Victor 
9000. Write for full details. Please spec- 
ify the computer you are working with. 




Not Just Another 
Slimmer CaiCQ). 




Learning is pait of the fun. 

• Coed, ages H)-I(j • 2, 4, or 8 week 

sessions • Convenient locations 

• With or without computer skills 

• Traditional camp activities 

• Professional Camp Directors 



A. 



ATARI 
COMPUTER CAMPS 

^1 A Warner Commurnciilions CoTTipany 

CALL TOLL FREE 800/847-4180 

For more inforni<iti(in find a \tnv. o>hr broehurt-. write 
to 40 East 34th Street, DeptlX New>brk. N.Y. 10016 
(please include age and phoiK' number). Outside U.S. 
or in New York Stale, callcollecl 212 Rfi9-5200. Staff 
applicants stiould apply m writing. 



MO¥l963 COMPUTC! 31 



THE BEGINNER'S PAGE 



Richard Mansfield, Senior Editor 



People are putting their home computers to all 
kinds of uses. Last month - to get an overview - 
we separated personal computing programs into 
fifteen broad types: 1. Graphics, 2. Music, 3. Word 
Processing, 4. Education, 5. Home Applications, 
6. Accounting, 7. Games, 8. Financial Simulation, 
9. Data Base Management, 10. Languages, 11. 
Operating Systems, 12. Disk Operating Systems, 
13. Utilities, 14. Telecommunications, and 15. 
Artificial Intelligence. We reviewed the first three, 
so now let's take a look at the second group. 

Education 

Although fears have been expressed that Com- 
puter Assisted Instruction (CAI) could lead to a 
brave new world of cold, inhuman, assembly line 
schooling - just the opposite seems to be taking 
place. How the computer teaches is entirely de- 
pendent on how it's programmed to teach. A CAI 
program can be sarcastic, or teach too slowly or 
too quickly, or offer endless, boring drills. But 
this is not something inherent in computerized 
teaching; bad teachers have been doing all these 
things for centuries. 

The opportunities for personalized, interac- 
tive, effectively paced CAI are just beginning to 
be explored. It wasn't long ago that we heard a 
good deal about attempts at new, unstructured 
educational styles. "Learning can be fun" was the 
slogan, but the results of these experiments were, 
to put it mildly, mixed. A part of an entire gener- 
ation failed to learn fundamental spelling, arith- 
metic, and even reading skills. 

CAI might well be the answer. After all, learn- 
ing should be exciting and challenging. When 
combined with sound and animation, many learn- 
ing programs are indistinguishable from games. 
Nearly every month, COMPUTE! publishes a CAI 
game or program. "Crosswords," in this issue, 
will construct crossword puzzles which can build 
vocabulary or teach spelling. Last month, there 
was "Math Fun." And as games themselves be- 
come more sophisticated, the "hidden" lessons 
within them will become more effective. Much 
remains to be discovered about CAI technique, 
but it seems quite possible that, via computers, 
math (and all the other subjects) can become fun 
for the average student. 

Home Applications 

This is a catch-all category. Growing out of hobbies 

32 COMftni! May 1983 



or special needs, these programs perform a per- 
sonal service such as keeping track of the birds a 
birdwatcher sees or the stamps a collector buys. 
Sometimes, home applications are just scaled- 
down versions of business programs. For example, 
the professional advertiser's mailing list program 
becomes, in the home, a personal Christmas/ 
birthday card manager. It will not only address the 
envelopes; it can remind you when to mail the cards. 
Other examples include personal inventory pro- 
grams (record, book, coin collections, etc.) or per- 
sonal analysis (biorhythms, nutritional planning, 
scheduling, computerized bowling league 
scorekeeping, and so forth). 

Big business and government have had years 
to computerize themselves. Some estimates 
suggest that computers do as much as 80 percent 
of the work in areas such as national defense. 
Home computerization is in its infancy, but the 
future seems to promise increasing use of "intelli- 
gent" appliances, information services, even robot 
vacuum cleaners. To all of us who try, with more 
or less difficulty, to keep our home and personal 
affairs in order, the offer of smart-machine 
domestic services can only be viewed as a major 
blessing. 

Descending Luxury: Accountants For 
Everyone 

Personal budgeting, retirement planning, invest- 
ment analysis, and tax preparation are among the 
currently popular applications of computers in 
home accounting. Most of us don't face financial 
decisions of sufficient complexity to require the 
services of a human accountant. On the other 
hand, most of us could use some help with our 
money management. Getting this help from our 
home computer is yet another example of what 
could be called dcscoidijig luxunj. 

To define that idea, let's look at another ex- 
ample: movies. When I was in college, we'd hear 
about the movie that the President or a Hollywood 
star had shown guests the night before. It seemed 
an extraordinary luxury to be able to watch a movie 
in your own house. Indeed, such freedom was 
only available to the very wealthy. Now home 
video equipment is making home theaters in- 
creasingly available to everyone. In a few years, 
the technology of high resolution, large-screen 
TV should be affordable everywhere. Another 
luxury has descended. @ 



COMPUTE} 

^^BUCATrOWS 




Our newest magazine, COMPUTE!' s Gazette for Commodore, is written for 
the beginning consumer of personal computing. Each monthly issue will bring 
you interesting features, exciting news, intriguing new products, and more. 

You'll find software news, best seller rankings in the recreational and educa- 
tional areas, and interviews, overviews, and industry views. 

Tutorials for beginners, advanced games for non-programmers, and intro- 
ductory help for fledgling computer users. 

And best of all you'll still find COMPUTE!, our monthly resource and appli- 
cations magazine for intermediate and advanced users. 

COMPUTE.' '5 Gazette for Commodore and COMPUTE!. We won't out- 
grow you. . . we'll grow with you. 

Use the attached post card or call Toll Free 800-334-0868 today to reserve 
your premiere issue of COMPUTE/ 's Gazette for Commodore. 

12 monthly issues, Charter Subscription Price $15 US, $20 US in Canada, 
elsewhere, Air Mail, $45 US. 



Other than as an independent supplier of quahry pniducts regarding 
the Commodore personal computer systems, COMPUTE! Publications 
is in no way associated with Commodore Business Machines, Inc. 



Commodore, VlC-20. and Gimmndore 64 are trademarks of 
Commodore Business Machtnes, Inc., and'or Commodore 
Electronics Limited. 



Jumping Jack 



Paul Burger 



Jumping Jack, for the unexpanded VIC, Atari 400/800, 
Couwiodorc 64, and TI-99/4A is a challenging game 
that makes full use of your computer's color and sound 
capabilities. Each game cart be played through several 
levels. The Atari version has iiine skill levels. This is a 
ganw that can be enjoyed /n/ all age groups. 



Jack is running across platforms and climbing 
down ladders to get to the bottom of the screen. 
Sounds easy enough, right? 

There's just one problem: these platforms 
are not very sturdy at all, and at any time they 
can collapse in certain places. You must be ready 
to press the space bar causing Jack to jump. If 
your timing is right, Jack will clear the hole and 
land safely on his feet. If not. Jack will fall into the 
collapsed section of the platform. 

If you are not quite quick enough on the space 
bar, you still have a chance to clear the hole. Here's 
how: If the space bar is pressed immediately after 
Jack gets over the hole, you can make a saving 
jump. However, Jack must be over the hole while 
in the air to get points for jumping the hole, so no 
points are scored for using a saving jump to get 
over a hole. This method can also be used to jump 
two holes in a row. Simply make a saving jump 
as described above for the first hole, and Jack will 
fly over the second hole (this scores points only 
for the second hole, however.) 

Program 1: vic-20 version 

M=3:T=150:D=5;X=25;P=61:POKE5 5,160:POK 

E56 , 29 : 5=36876 : POKE36878 , 15 t GOTOl 
0012 

1 C=27 : F%=5 : FORI=7680TO8ia5 : POKEI , 59 :NEX 

T 

2 FORI=7702TO7723:POKEI,53:NEXT:FORI=7ei 

2TO7833:POKEI,53:NEXT:FORI=7900TO 
7921: POKEI, 53 :NEXT 

3 POKE36a79,C:FORI=8032TO8053 :POKEI,53:N 

EXT :FORI=8142TOB163: POKEI, 53 :NEXT 

4 FORI=38400TO38884+2 I : POKEI , 4 : NEXT 

5 FORI=3848aTO38510+21 : POKEI , F% :NEXT 

6 FORI=3a576T038598+21 sPOKEI , F% :NEXT 

7 FORI=38708TO38730+21 :POKEI , F% :NEXT 

8 FORI =388 iaTO38840+21; POKEI, F%: NEXT :G0S 

UB10020 : FORI = 1TO1000 -.NEXT 

9 1=7790 

10 IFI/2=INT( l/2 )THENP0KEI-1 , 59 :GOSUB110 

11 IFI/2=INT( 1/2 )THENPOKEI, 55 : FORJ=lTOT :N 

EXT s GOTO 14 

34 COMPUni Mo/ 1083 



1 3 POKEI -1 , 59 : POKEI , 56 : FORJ=lTOT : NEXT : B=7 

812:GOSUB510 

14 IFPEEK{l97) = 32THEbJGOSUB20 

15 IFPEEK{I+22)=54THENPOKEI,59:GOTO30 

16 IFPEEK(I+22)=60THEN500 

17 1=1+1 : IFI> 781 1THEHI=7790:POKE781 1,59 

18 GOTO10 

20 I=I-21:POKEI+21,59 

21 IFPEEK( 1+22 )<>590RPEEK( 1+44 )<>53THENSC 

=SC+X:POKEI-22,P:GOSUB112:POKEI-2 
2,59 

23 POKEI, 55:FORJ=lTOT:NEXT:I=I+23: IFI>781 

1THENI=7790:POKE7811,59 

24 POKE77B9,59:POKE7790,59 

2 5 FORJ=1TOT : NEXT : POKEI-2 3 , 59 : POKEI , 5 5 : RE 

TURN 

30 1=7898 

31 IFI/2=INT(I/2)THENPOKEI+I,59:GOSUB1I0 

3 2 IFI/2=INT(I/2)THENPOKEI,58:FORJ=1TOT:N 

EXT -.GOTO 3 4 
3 3 POKEI+1 , 59 : POKEI , 57 :F0RJ=1T0T: NEXT: B=7 

900:GOSUB510 
34 IFPEEK(197)=32THENGOSUB40 

3 5 IFPEEK(I+2 2)=54THENPOKEI,59:GOTO50 

36 IFPEEK{I+22)=60THEN500 

37 1=1-1 :IPI<7878THENI=7898:POKE7878, 59 

38 G0T031 

40 I=I-23:POKEI+23,59 

41 IFPEEK(l+22) <> 590RPEEK(l+44) <>53THENSC 

=SC+X:POKEI-2 2,P:GOSUBll2:POKEI-2 
2,59 

4 3 POKEI, 58 :F0RJ=1 TOT: NEXT: 1=1+21 :IFI<787 

8THENI=7898 :POKE787B , 59 
44 POKE7856,59:POKE7855,59 

4 5 F0RJ=1T0T : NEXT :P0KEI-2 1,59: POKEI, 58: RE 

TURN 

50 1=8010 

51 IFI/2=INT(i/2)THENPOKEI-1,59:GOSUB110 

5 2 IFl/2=INT(l/2)THENPOKEI,55:FORJ=ITOT:M 

EXT:GOT054 
5 3 POKEI-1 , 59 : POKEI , 56 : F0RJ=1T0T : NEXT : B^^S 

032:GOSUB510 
54 IFPEEK(197)=32THENGOSUB60 
5 5 IFPEEK(I+22)=54THENPOKEI,59:GOTO70 
56 IPPEEK{I+22)=60THEN500 

5 7 1 = 1+1 :IPI>8031THENI=8010;POKEa031 ,59 
58 G0T051 

60 I=I~21:POKEI+21,59:IFPEEKCi)<>59THENSC 

=SC+300 

61 IFPEEK(I+22)<>590RPEEK(I+44)<>53THENSC 

= SC+X:P0KEI-22,P:G0SUBU2:P0KEI-2 
2,59 

6 3 POKEI, 55 :F0RJ=1T0T:NEXT: 1=1+23 :IFI> 803 

1THENI=8010:POKE8031,59 
64 POKE8009,59:POKE8010,59 
6 5 F0RJ=1T0T : NEXT : POKEI- 23 , 59 : POKEI , 55 : RE 

TURN 

70 I=ai40 

71 IFI/2=INT(I/2)THENP0KEI+1, 59:GOSUB110 

72 IFI/2=INT(i/2)THENPOKEI, 58 : F0RJ=1T0T : N 

EXT:G0T074 




No one, not even the author, has 
ever achieved the last Gridrunner. It 
is an extremely fast-paced arcade- 
quality game designed to test your 
coolness under fire and challenge 
your reflexes. 




As the pilot of the Gridrunner, a 
combat ship, you must annihilate 
the various enemies traveling 
along the "Grid." l-ligh scores are 
possible only through the mastery 
of the patterns of the X/Y Zappers 
and the Gridsearch Droids which, 
when destroyed, mutate into 
potentially lethal Pods. 

Gridrunner has 32 levels of diffi- 
culty (20 levels in 
the VIC 20 ver- 
sion}. To this 
date, the 13th 
level has been 
the highest 
achieved. 



Gridrunner 
is available 
for VIC 20, 
Commodore 
64 and Atari 
400/800. 
Can you beat 
Gridrunner? 
See your local 
computer or 
games dealer 
and find out. 



Human Engineered Software 
71 Park Lane 
Brisbane, CA 94005 




a division of US! 













'■ ft f 



iTEBffiK.; ^r-:iM?' 



i- "~i 1.:^ 



:-r— -T»^«-- 



AM.r6r^:iHrw;v.ir-.^. •■••■■■ ..MiaB^BlBaF"**^***' ' 



"^rsn^rsa 



J'JijaiiSiaijLfei: 



r^acU «»t IM a*Twi tabr rici lU^ 



ii'-iS MSis.'hsa'aaftS!^'"-""-^ 



"iKi»'i"'WII"'Wli'«iiiiii'i""'lilW'ir' 



DATA 20 's easy to buy, easy to install, easy to use 
peripherals are available for both VIC 20® and 
Commodore 64,® Our enhancements give you more 
power, more sophisticated capabilities and now. . . 

Free software with any VIDEO PAK. WORD 
MANAGER, our exclusive word processing pack- 
age is full of advanced features. Combined with 

our VIDEO PAK, it 

gives your VIC 20 or 
Commodore 64 capa- 
bilities found only in 
the most expensive 
word processing 
programs. Like fuU- 
function status dis- 
play, and up and 
down scrolling, plus 
13 advanced editing 
features including 
merging and block move. In addition, we've 
included complementary mailing list programs. 
All are written in machine language for fast execu- 
tion and minitnal memory requirements. They're 
self-documenting and exceptionally easy to use. A 
self-adhesive strip for function keys makes most 
commands one-key simple. So simple, in fact, that 
we've eliminated the 
need for time- 
consuming menus 
and prompts. WORD 
MANAGER is pro- 
vided on tape— and 
can be loaded to disk. 
It's yours free with 
any VIDEO PAK 
you pick. 

New! Our lowest 

priced VIC 20 VIDEO PAK ever. 

We've just introduced a highly cost-effective 8K 
version. Price it out! 





Just pop this cartridge into your 
expansion port, and your display 
instantly goes to the industry-standard 
24 lines, with a choice of 40 or 80 characters. 
Displayed this way, you'll know exactly what 
you're going to get on the printout. And you 
reaUy increase 
the amount of 
data you can see 
on the screen. 
You also increase 
memory in the 
process — to 12K 
to handle more 
sophisticated 
functions. Our 
package includes a 
terminal emulator 
and screen print 
feature. Plus 
the free WORD 
MANAGER 
software 
package! 

VIDEO PAK 80 
for Commodore 64. Move up to the industry- 
standard 80-column format, and you'U wonder 
how you ever did without it! Use software control 
to go from 40 to 80 characters in monochrome— 
and back to 40 characters in color. With VIDEO 
PAK 80, you can take fuU advantage of the 








'11 



:'miti 



^ 



terminal emulator mode and 
screen print feature with software 
we include. And this is a great package 
for word processing— particularly with 
our free WORD MANAGER software. 

Z-80 VIDEO PAK brings complete CP/M ' com- 
patibility to your 64. This exciting peripheral 
gives you all the VIDEO PAK 80 features 
described above— plus! You see, our built-in 
microprocessor and software give you CP/M com- 
patibuity for any of the many programs format- 
ted for the Commodore 1541* Disk Drive. The 
possibilities are truly awesome! And the WORD 
MANAGER software is free with your purchase. 
VIDEO CABLE completes the installation. 
It's the easy way to connect your VIC 20 or 
Commodore 64 monitor to VIDEO PAK. And 
a must for 80-column use. 




PRINTER INTERFACE in serial. Here's the 
perfect connection for your VIC 20 or 
Commodore 64. With our interface, you just plug 
in and go. We have a simple, yet sophisticated 
interface that offers flexible, continuous 
monitoring of data transfer functions— and virtu- 
ally troubleshoots its own easy installation. 

EXPANSION CHASSIS lets you use 4 car- 
tridges at once. Run a series of compatible mem- 
ory, software or game cartridges of any make on 
your VIC 20. Anything with the standard 22-pin 
edge connector. A built-in 500ma fuse protects 
yoiu" power supply. 

MEMORY CARTRIDGE 
boosts VIC 20 brain- 
power to 20K. This 

super-reliable cartridge 
features the finest quality 
components, housed in a 
rugged plastic case. 

Check out our AWESOME peripherals. Ask your 
dealer for a first-hand look at our extensive capa- 
bilities, high quality, and reasonable prices. Or 
send for a current catalog and price list. 
DATA 20 CORPORATION, 23011 Moulton 
Parkway, Suite BIO, Laguna Hills, CA 92653. 

Commodore 64, Commodore 1541, and VIC 20 are registered trade- 
marks of Commodore Electronics, Ltd, 
CP/M is a registered trademark of Digital Research, Inc. 



DMA 

CORPOHATtO Mi^ 

Price/Performance Peripherals 

NOW WITH FREE SOFTWARE! 




7 3 POKEI+1 , 59 : POKEI , 57 : FORJ=lTOT : NEXT : B=8 

142:GOSUB510 
74 IFPEEK(197)=32THENGOSUB80 
7 5 IFPEEK(l + 22)=54THENfPOKEI,59:GOTO100 
76 IFPEEK(I+22)=60THEN500 

7 7 I=r-1:IFI<8120THENI=8140:POKE8120, 59 
78 G0T071 

80 I=I-23:POKEI+23,59 

81 IFPEEK{l+22)<>590RPEEK{l+44) <>5 3THENSC 

=SC+X:POKEI-22,P:GOSUB112:POKEI-2 
2,59 

8 3 POKEI, 58 :F0RJ=1T0T:NEXT: 1=1+21 :IFI<812 

0THENI=8140:POKE8120, 59 
84 POKE8098, 59:POKEB097, 59 
8 5 FORJ=1TOT:NEXT: P0KEI-2I, 59 : POKEI , 58 : RE 

TURN 

100 P=P+1 :IPP=64THENP=61 

101 D=D-l:T=T-50 

102 X=X+5 : 1 FX> 1 2 5THENX=25 : D=8 : T=l 50 : C=27 : 
F% = 5 

103 IFX=75THENC=232:F%=0 

104 IFX=125THENC=8:F%=7 

105 GOT02 

110 POKES , 140 : FORY=1TO10 : NEXT : POKES , : RETU 
RN 

111 POKES+l, 190: FORY=1TO2 5:NEXT:POKES+1,0: 
RETURN 

112 FORO=lTOl5: POKES, 200+0 :NEXTO:POKES,0:R 
ETURN 

113 FORO=20TO0STEP-1:POKES, 230+0 :F0RY=1T02 
5 : NEXTY.O: POKES, 0: RETURN 

500 G0SUB1L3:M=M~1 : IFH=0THEN502 

501 P=61:X=2 5:D=6:C=27:T=150:F%=5:POKEI,5 9 
:G0T02 

502 POKE36869,240:PRI!SrTCHR$ (147 ) ?SPC(225); 
"GAME OVERl ":PRINT:PRI«T"YOUR SCO 

RE WAS ";SC 

503 PRINT :PRINT"PLAY AGAIN?" 

504 K=PEEK(197) : IFK=32ORK=64THEN504 

505 IFK=11THENRUN 

506 END 

510 I FINT ( RND ( 1 ) *D ) + 1< > ITHENRETURN 

511 L=INT(RND(1)*21 )+1 : IFL=20ORL=1THEN51 1 

512 POKEB+L,60:GOSUB111 :RETURN 
10000 DATA255, 129,66,66,36, 36, 24, 255 

10002 DATAG&, 120,66,66,66,126,66,66 

10003 DATA12,8,13,62,44,12,18,33 

10004 DATA24,16,24,24,24,16,16,24 

10005 DATA24,8,24,24,24,8,8,24 

10006 DATA24,8,88,62,26,24,36,66 

10007 DATA0, 0,0, 0,0, 0,0,0 

10008 DATA129,66,66,66,98,34,34,34 

10009 DATA27, 10,27, 17,27,0,0,0 

10010 DATA59, 10, 11,9, 11,0,0,0 

10011 DATA91,74,91,81,91,0,0,0 

10012 RESTORE : FORI=7592T07679 : READA: POKEI , 
A: NEXT 

10015 POKE36869,255 

10016 GOTOl 

10020 FORI=7a32T07a98STEP22: POKEI, 54: NEXT; 
FORI=7901TO8011STEP22: POKEI, 54 :NEXT 

10021 FORI=305 2TOei40STEP22: POKEI, 54: NEXT: 
FORI=38 5 52T0386I8STEP22 :POKEI ,6 :NEXT 

10022 FORI=3862IT038731STEP22:POKEI,6 :NEXT: 
FORI=387 72TO38860STEP22:POKEI,6:NEXT 

10023 P0KE8143 , 54 :POKE8165, 54 : POKE3a863 , 6 : 
POKE38885,6 : RETURN 



Program 2: Atari version 



RTHRI JUMPING JRC 



100 REM 

140 BRAPHICS 18:PDSITIQN 7,6:? «&;"J 
CEMBI [IB ": POSITION 8,7;? #6;"JEc(I!" 

38 COMPUre! May 1983 



0, "K" 

PEEK C 560) +256«PEEKC561 



D 1 12: P 

53770) : 

I : MEXT 

( 106) -e 

THEN G 

*RND (0) 
SITION 



141 OPEN #1,4, 

142 D IFF=1 : DL- 
) 

145 FOR J=l TO 10:FDR 1=100 T 

OKE DL.IiPOKE 53274, PEEK ( 

SOUND 0, I+J-100, 10, J : NEXT 
J 
150 SOUND 0, 0, 0, 0: CHSET= (PEEK 

)*256:IF PEEK £CHSET+8> < >B 

OSUB 1080 
160 GRAPHICS i7:SETCOLOR 4,16 

,12:P0KE 756, CHSET/256: PD 

6.23:? «6; "[H33ia^";DIFF 
162 IF DIFF>1 THEN 170 
16S POSITION 4,0:? ^6-,"a3M3S. 

;:GET # 1 , fl : SPEED= A-4a : I F 
OR SPEED>9 THEN 165 

COLOR 32:PLOT 4,0:DRAU1TD 

DIR=l:HOLE=7+12S:LfiDDER=6 

sSETCDLDR 1 , 1 5 , 6 : SETCOLOR 

PR = 

FOR 1=2 TO 22 STEP 4 

COLOR 5+32:PLDT 0,I:DRAWT 

IF I>20 THEN 270 

R=INT (RND(0) »14 + 4) 

I F SEN t R-PR) < >DIR 

COLOR LADDER: PLOT 

-1-4 

PR = R 

DIR=-DIR 

NEXT I 

COL = 2 

RDW= 1 

CHAR=1 

OLDCOL=l 

OLDROW=l 

DIR=1 

COLOR 32: 

IF RND ( 0) 



167 
1 70 

1 80 
190 
200 
210 
220 

2 30 
240 

250 
260 
270 
280 
290 
300 
310 
320 
340 
350 
360 
370 
380 
390 
400 
410 
420 

430 

440 

450 
460 
470 
480 
490 
500 
510 
520 
530 
540 
550 
560 

570 
580 
590 
600 
610 
620 
625 

630 
640 



1H9S" 
SPEED< 1 

19,0 
-H321-1 28 
3.4,6 



O 19, I 



-hDIR 
THEN ■?■:> 
R.I: DRA 





WTO R, I 



PLOT OLDCOL, DLDROW 
>DIFF/10 THEN 430 

R=INT(4»RND(0))*4+6 

C=INT(RND(0)*19)-i-l 

LOCATE C.R.A 

IF A=LADDER THEN 430 

COLOR HOLE:PLOT C,R 

0, 100, 12,8: FOR W=l 
SOUND 0,0,0,0 
CHAR+2» (DIRC0) :PLOT 



SOUND 
EXT W: 
COLOR 
U 
SOUND 



TO 10: N 
COL, RO 
0,0,0,S:FDR W=l TO 5:NEXT 



W:SOUND 0. 



0,0,0 
THEN 990 



COL<20 THEN 



CHECK 



540 



IF ROW>20 

OLDCOL=COL 

OLDRQW=ROW 

COL = COL-f-DIR 

IF CaL>0 AND 

CDL=COL-DIR 

ROW=ROW+4 

DIR=-DIR 

GOTO 350 

LOCATE COL,ROW-H 

ST=PEEK (764) 

IF ST<255 THEN POKE 764, 

640 
IF CHECK=HOLE THEN 770 
IF CHECKOLADDER THEN 610 
DIR=-DIR 
R0W=R0W-H4 
CHAR=3-CHAR 
SCORE = SCORE-H0. 5 

FOR SLOW=i TO (9-SPEED) t 10: NEXT 
SLOW 

GOTO 350 
IF CHECKOHOLE THEN 1030 



?55: GOTO 



For Heroes Only! 



1 




Type Attack 



The planet Lexicon is 

under atlack! Letlers o1 

the alphabet are falling 

from the sky. To repel 

Ihem. you must be able to 

type the letlers faster than 

they can fall. Be qjick! 

An entire civilization is 

depending on your skill. 

Avail, or disis for the Apple II. 

11+ or lie and Atari 600 or 

1200, IBM-PC and 

Commodore 64 and an 

cartridge lor the VIC-20. 



Blade of 
Blackpoole 

step back in lime and join 
the search for the magical 
sword of Myraglym. Travel 
cautiously on your journey 
for you will encounter 
dangerous serpents, 
spine-chilling evils and 
carnivorous plants that 
crave human flesh! 

Avail, on disk lor Ihe Apple II, 
II r or lie and Alan BOO or 
1200 and Commodora 64. 



lUS" 





Twerps 



The troldest space rescue 
ever! Defenseless Twerps 
are stranded on an aste- 
roid, You, Captain Twerp, 
are to board a Twerp- 
craft, blast through the 
Orbiters, land safely and 
rescue your comrades. 
Beware of the Glingas 
and Twerp-eating 
Gleepnites! 

Avail, on disl^ lor the Apple !l, 
11+ or lie and Alan 800 or 1200. 



Pure Video Excitement! 

For Your Atari 800 or 1200, Apple II, II + or lie, 
Commodore 64, VIC-20 and IBM-PC 



Sirius, Twerps, Blade of Blackpoole. Type Attack and Critical Mass are trademarks of 
Sirius Software, Inc., 10364 Rockingham Drive, Sacramento. CA 95827 (916) 366-1195. 
AH figfits reserved. Apple 11.11 > and tie are trademarks ol Apple Computer, hc. 
Alari aOO and 1200 are trademarks ol Atari. Inc. VIC-20 and Commodore 64 
are trademarks of Commodore Business Machines, Inc. IBM-PC is a 
trademark of International Business Machines, Inc, 



Critical Mass 

On Jan, 1st at 10:00 am, 
the U,N- received this 
message: "Good h/lorning, 
in exactly 9 days, the 
world's 5 largest cities virill 
be destroyed by thermal 
nuclear weapons, " At 
10:03 am, you received 
this assignment: STOP 
, . . THIS . . . LUNATIC! 

Avail, on disk lor Ihe Apple II, 

I or Ite and Atari 800 or 
1200 and Commodore 64, 





650 COLOR 32;PL0T OL DCOL , DL DRD W 

660 COLOR 1+2* < D IR<0) : PLOT COL,RDW-i 

670 FOR W=:50 TO STEP -1:S0UND 0,W, 

10,8;SOUND 0, W+1 0, 10, 8: NEXT W 
700 COLOR 9+32:PLOT COL,ROW-l 
710 SCORE=SCORE+25 
720 FOR W=15 TO STEP -l:SOUND 0.10 

,10,W:SOUND 1 , 20, 10, W: NEXT U 
740 COLOR 32:PL0T CaL,RQW-l 
750 COL=COL+DIR 
760 GOTO 490 
770 IF PEEK (764) <255 THEN POKE 764,2 

55:GDTO 640 
790 COLOR 32:PLaT OLDCOL , OLDROW 
800 COLOR 10:PLOT COL , ROW 
810 FOR 1=100 TO 2S0 
820 SOUND 0,1,10,8 
830 NEXT I 

840 COLOR 32:PLOT COL, ROW 
850 COLOR 136:PLOT COL,ROW-»-l 
860 FOR W=i5 TO STEP -0 . 5 : SOUND 0, 

W, 1 2, W: NEXT W 
880 GRAPHICS ISiSETCOLOR 4,1,12 
900 POSITION 2,4:'? #6;"your score wa 

s: "-.POSITION 9-LEN(STR«(INT(SC0R 

E)))/2,6:? *6; INT (SCORE) 
910 POSITION 1,10:? # 6 : " riJW:V^:TrT;tTna 

araia: " -, 

920 K = PEEK (764) : IF K035 AND K043 T 

HEN 920 
930 POKE 764,255 
950 IF K=35 THEN 980 
960 SCORE=0: DIFF=1 
970 GOTO 160 
980 END 

990 DIFF=DIFF+1 : SPEED=SPEED+0. 5 
1000 SCORE=SCORE+50 
1020 GOTO 160 

1030 FOR 1=150 TO 140 STEP -1 
1040 SOUND 0,1,10,4 
1050 NEXT I 
1060 SCORE=SCORE-25 
1070 GOTO 580 

1080 CHSET= (PEEK ( 106) -8) *256: FOR 1=0 

TO 511:POKE CHSET+ I , PEEK ( 57344 
■H ) : POKE 708-»-3*RND(0) , PEEK (537 7 
0) : NEXT I 

1081 RESTORE 1085 

1082 READ A: IF n=-l THEN RETURN 

1083 FOR J=0 TO 7:READ B:POKE CHSET+ 
A*e+J,B:POKE 70S+3*RND ( ) , PEEK ( 
53770) : NEXT J 

1084 GOTO 1082 

1085 DATA 1,8,20,24,80,62,24,20,34 

1086 DATA 2,8,20,24,18,124,152,36,72 

1087 DATA 3,16,40,24,8,124,26,40,68 

1088 DATA 4,16,40,24,72,62,25,36,18 

1089 DATA 5,255,66,36,24,24,36,66,25 
5 

1090 DATA 6,126,66,126,66,126,66,126 
, 66 

1091 DATA 7,129,66,68,34,0,36,74,255 

1092 DATA 8,189,90,84,34,0,36,74,255 

1093 DATA 9,0,119,20,119,65,119,0,0 

1094 DATA 10,0,28,93,42,28,28,20,34 

1095 DATA -1 



Program 3: C64 version 



REM JUMPING JACK FOR 64 

5 GOSUB30005PRINT"fCLEAR)",-"{ll RIGHTIiN 

ITIALIZING" 
10 M=3:T=10:D=5:X=2 5:P=61 : POKE5 5 , 16 :P0KE5 

6 , 64 : S=54272 :P0KES3281 , 1 :GOTO970 



20 C=7 : F%=5 : FORI=1024TO2041 : POKEI , 59 : MEXT 

30 POKE53280,C:FORI=1064TO1103: POKEI, 53 :N 
EXT : FORI=1264TO1303 : POKEI , 53 : NEXT 

33 FORI=1424TOl463:POKEI, 53:NEXT:POKE1425 

, 54:POKE1702,54:POKE1865,54 
40 FORI=1664TO1703: POKEI, 53: NEXT :FORI=186 

4TO1903: POKEI, 53:NEXT 
50 FORI=55296T056176+39:POKEI,4:NEXT 
60 F0RI=55456TO55496+39:P0KEI,F% ;NEXT 
70 FORI=5 5616T055655+39: POKEI, F%: NEXT 
80 FORI=55356T055896+39 : POKEI , F% :NEXT 
90 FORI=56056TO56096+39: POKEI, F%:NEXT:GOS 

UB1000 : FORI=1TOI000 :NEXT 
100 I=1224:POKE1302,54:POKE142 5,54:POKE170 

2,54:POKE1865,54 
110 IFl/2=INT(r/2)THENPOKEI-l,59:GOSUB7 20 
120 IFl/2=INT(l/2)THENPOKEI,55:FORJ=lTOT:N 

EXT:GOTO140 
130 POKEI-1, 59: POKEI, 56 : FORJ=lTOT : NEXT : B=l 

264:GOSUBa30 
140 IFPEEK(197)=60THENGOSUB190 
1 50 IFPEEK(l+40 )=54THENPOKEI , 59 :GOTO240 
160 IFPEEK(I+40)=60THEN760 

170 1=1+1 :IFI>1263THEHI=1224:POKE1263,59 
180 GOTO110 

190 I=I-39:POKEI+39,59 
200 IFPEEK(l+40) <>59ORPEEK(l+80) 053THENSC 

=SC+X;POKEI-40,P:GOSUB740:POKEI-4 

0,59 
210 POKEI, 55:P0RJ=1T0T:NEXT: 1=1+41: IFI>126 

3THENI=1224:POKEl263,59:POKE122 3, 

59 

220 POKE1403,59:POKE1404,59 

2 30 FORJ=lTOT:NEXT:POKEI-41 , 59 : POKEI , 55 : RE 

TURN 
240 1=1422 

2 50 IFl/2=INT(l/2)THENPOKEI+I,59:GOSUB720 
260 IFI/2=INT( I/2)THENPOKEI,58:FORJ=1TOT:N 

EXT:GOTO280 

2 70 POKEI+1, 59: POKEI, 57 :F0RJ=1T0T: NEXT :B=1 

424:GOSUB830 
280 IFPEEK(197 )=60THENGOSUB330 
290 IFPEEK(I+40)=54THENPOKEI,59:GOTO380 
300 IFPEEK(I+40)=60THEN760 

310 1=1-1 :IFI<1384THENI=1422:POKEl384,59 
320 GOTO250 

330 1=1-41 ;P0KEI+41, 59 
340 IFPEEK(l+40) <> 59ORPEEK(l+80 ) <>53THENSC 

=SC+X: POKEI- 40, P:GOSUB740:POKEI-4 

0,59 

3 50 POKEI, 58 :F0RJ=1T0T: NEXT: 1=1+39 :IFI< 138 

4THENI=142 2: POKEI 384, 59: POKEI 344, 
59 
360 POKE1344,59:POKE1343,59 

3 70 P0RJ=1T0T : NEXT ; POKEI-39 ,59: POKEI , 58 : RE 

TURN 
330 1=1624 

390 IFl/2=INT( l/2)THENPOKEI-l,59:GOSUB720 
400 IFl/2=INT( I/2)THENPOKEI,55:FORJ=1TOT:N 

EXT:GOTO420 
410 POKEI-1 , 59:P0KEI,56:F0RJ=1TQT:NEXT:B=1 

664:GOSUBB30 

4 20 IFPEEK(197)=60THENGOSUB470 

430 IFPEEK(I+40)=54THENPOKEI, 59:GOTO520 

440 IFPEEK(I+4O)=60THEN760 

4 50 1=1+1 :IFI>1663THENI=16 24:P0KE1663,59:P 

OKE1623,59 
460 GOTO390 
470 1=1-39: POKE I +3 9, 59:IFPEEK(l) <>59THENSC 

=SC+300 
480 IFPEEK(l+40) <>59ORPEEK(I+B0) 053THENSC 



'ID COMPlni! MOV 1983 




^ 



UN-EXPANDED 

OTHER TITLES 
AVAILABLE (NOW) 
$10.00 

Amazing Brickdown 

Hangman Space Attack 

Super Worm 

$12.00 

Dune Buggy Jungle 

Meteor Roulette 

Zeppelin* 

$24.00 

Asteroids Vicmen 

Battlestar Hunter* 

• VIC Panic Cosmiads 

B y(VIC-64)S 

i SPRITEWRITER 64 high reso- 

r~ '^ 



t 



ONLY $29.95 



"REQUIRES JOYSTICK 



lil^L,Uil.iiJii^Li^i..Liil.iL.l^i..iJil.Jdidii.iiiii.tJii.iL.lidH.iliil.tii.l^t..t. 



Defend your home planet from 
the multi-colored aliens as they 
peel out of formation and mount 
a ferocious attack upon your 
base, weaving back and forth 
and firing their own deadly 
weapons. This program uses 
full color high resolution gra- 
phics and fantastic sound ef- 
fects. Written entirely in ma- 
chine code for a super fast 
action game. Requires the un- 
expanded VIC-20 computer and 
cassette. 

$19.95 




jmwwmwTT'mwfT'mm 



VIC20 



Guide the Bunny across the 
crowded highway, dodging 
speeding trucks and cars, care- 
fully navigate across a wide, 
swift flowing, piranha infested 
river to the safety of a warren. 
Full use of High Resolution 
graphics. For the un-expanded 
VIC-20 computer with cassette 
and joystick. 

$19.95 





Three games in one package. 
Slalom, Down Hill and Giant 
Slalom. Each game has nine 
separate skill levels. Full high 
resolution graphics and sound. 
For the un-expanded VIC-20 
with cassette. 

$19.95 



Mail To: STARTECH. INC. 

13450 MaxellaG 185 - Suite 200 
Marina Del Rey, CA 90291 



DEALERS CALL! Telephone: 
NAME 


213<823-864g 


ADDRESS 


CITY 


STATE 


ZIP 


PLEASE SEND ME: 





I ENCLOSE CHECK FOR: S 

CALIFOflNIA RESIDENTS ADD 6'A% TAX TO TOTAL 



=SC+X:POKEI-40, P :GOSUB740 ; POKEI-4 

0,59 
490 POKEI,55;FORJ=lTOT:aEXT: 1=1+41 : IFI > 166 

3THENI=1624:POKE1663, 59 
500 P0KE1641,59:P0KE;1624,59:P0KE1623,59 
510 FO[U=lTOT:NEXT:POKEI-41,59:POKEI, 55:RE 

TURN 
520 1=1862 

5 30 IFl/2=INT(l/2)THENPOKEI+l,59:GOSUB720 
540 IFl/2=INT(l/2)THENPOKEI, 58 : FORJ=1TOT : N 

EXT:GOTO560 
5 50 POKEI+1 ,59:POKEI,5 7 : F0RJ=1 TOT : NEXT : B=l 

a64:GOSUB830 
560 IFPEEK( 197 )=60THEHGOSUB610 

5 70 IPPEEK{I+40)=54THENPOKEI,59:GOTO660 
580 IFPEEK(I+40)=60THEN760 

590 I=I-1:IF1<1824THENI=1862:?0KE1B24,59 

600 GOTO530 

610 I=I-41:POKEI+41, 59 

6 20 IFPE£K{ 1+40 )<>590RPEEK( 1+80 )<>53THENSC 

= SC+;< : POKEI-40 , P :GOSUB7 40 : POKEl-4 

0,59 
6 30 POKEI, 58 :F0RJ=1T0T: NEXT: 1=1+39 :IFI< 182 

4THENI=lB62:P0KEia24, 59 
640 POKEl784,59:POKE1783,59 

6 50 FORJ=lTOT: NEXT: POKEI- 39, 59 : POKEI , 58 : RE 

TURN 
660 P=P+1 :IFP=64THENP=61 
670 D=D-l:T=T-.l 
680 X=X+50': IFK>125THENX=25;D=8:T=10:C=5:F'i 

= 5 
690 IFX=75THENC=0:F%=0 
700 IFX=125THENC=B: F%=7 
710 GOTO30 

7 20 POKES+4 ,\7: POKES + 5 ,13 2: POKES+6 ,132: POK 

ES+24,6 
721 H0=2a:L0=49:POKES+i ,H0:POKES,L0:FORZ=1 

TO2O0 : NEXT : GOSUB2000 : RETURN 
740 POKES+24, 15: POKES+4, 17: POKES+5, 132: POK 

ES+6,132 
7 41 FORm = 21T0126:POKES + l,Hl:LI = 181:POKES, 

Ll: NEXT :GOSUB2000: RETURN 
7 60 POKES+24, 15 :P0KES+4, 17: POKES+5, 33 :POKE 

S+6,132:H2=233 
7 65 H2=H2-5:POKES+l,H2:L2=iai: POKES, L2 
7 66 POKEI , 58 : POKEI-40 , 59 : POKEI+5427 2 , 0:1=1 

+40:1FI<1983THEN76 5 
767 GOSUB2001 
7 69 M=M-1:IFM=0THEN780:POKES+1,H2:L2=181 :P 

OKES,L2:NEXT:GOSUB2001 
7 70 P=61 :X=2 5 :D=6 : C=27 :T=10 ! F% = 5 : POKEI , 59 : 

GOTO30 

7 80 POKE53272,21:PRINTCHR$(147);SPC(205) ; " 

{09 RIGHTIGAME OVERl": PRINT 
785 PRINT" {down} Ul RIGHTJyOUR SCORE WAS"; 

sc 

790 PRINT:PRINT"{D0WN1 {13 RIGHTIpLAY AGAIN 

?" 
800 K=PEEK(197) : IFK=60THEN800 
810 IFK=25THENPRINT" {CLEAR] " : RUN 
820 IFK=39THENPRINT" {clear] {10 DOWN1{08 RI 

RIGHT}GOODBYEi 1 "; : FORW=lTO500 :NEX 

T: PRINT" {clear} " : END 
825 GOTO800 

830 ifint(rnd(i)*d)+i<>ithenreturn 

840 L=INT{RND(1)*39)+1:IFL=20ORL=1THEN840 
850 POKEB+L,60;GOSUB720: RETURN 
860 DATA255,129,66,66,36,36,24,255 

8 70 DATA66, 126,66,66,66,126,66,66 
880 DATA12,B, 13,62,44, 12, 18, 33 
890 DATA24, 16,24,24,24, 16,16,24 
900 DATA24,8,24,24,24,8,a,24 

910 DATA24,8,88,62,26,24,36,66 



9 20 DAT A0, 0,0, 0,0, 0,0,0 
930 DATA129,66,66,66,98,34,34,34 
940 DATA27,10,27,17,27,0,0,0 
950 DATA59,10,11,9,11,0,0,0 
960 DATA91,74,91,81,91,0,0,0,0 

970 POKE53272, ( PEEK( 53272 )AND240 ) +12 

971 POKE56334,PEEK(56334)AND254 

972 POKEI, PEEKCI )AND251 

9 73 FORI=0TO511:POKEI+12288,PEEKCI+53248): 
NEXT 

974 POKEI, PEEK ( 1 )0R4 

975 POKE56334,PEEK(56334)ORl 

9 76 RESTORE: FORI =12 2 88+53*8X012288+64*8: RE 

ADA: POKEI, A: NEXT 
990 GOTO20 
1000 FORI=1302TO1422STEP40: POKEI, 54 :NEXT:FO 

RI=1425TOI62 5STEP40 : POKEI , 54 : NEXT 

1010 FORI=1702TO186 2STEP40: POKEI, 54: NEXT 
1015 FORI=5 5 5 74TO55694STEP40:POKEI,3:NEXT 
1020 FORI=55697TO55897STEP40:POKEI ,3:NEXT: F 

ORI=5 5974TO56134STEP40: POKEI, 3 : NE 

XT 
1030 POKEia65, 54:POKE190 5,54:POKE56137, 3:P0 

KE56177, 3: RETURN 
2000 POKES+4 , : POKES+5 , : POKES+6 , : RETURN 

2 001 POKES+6, 15: POKES+4, 129: POKES+5 , 132 : POK 

ES+6,132 
2002 H3=10 :L3=143 :P0KES+1 , H3 ; POKES , L3 : FORT= 

1TO1000 : NEXT :GOSUB2000 : RETURN 
3000 PRINT" {clear} {02 D0WN]T0 GET POINTS, Y 

OU MUST JUMP OVER HOLES SO THAT T 

HE MAN IS AT "; 
3002 PRIKT"THE HIGHEST POSITION OVER ■" 

THE HOLE. " 
3010 PRINT" {02 D0WN]tHE NUMBER OF POINTS IN 

CREASES WITH THE NUMBER OF SCREEN 

S COMPLETED 
3020 PRINT" {02 down} 25 PTS PER HOLE (1ST SG 

REEN) " 
3025 PRINT"{02 D0WN}75 PTS PER HOLE (2ND SC 

REEN) " 
3030 PRINT"{02 D0WN}125 PTS PER HOLE (3RD S 

CRSEN) " 
3040 PRINT" {03 D0WN}T0 JUMP PRESS THE SPACE 

BAR" 
3050 PRINT"PRESS SPACE BAR TO CONTINUE" 
3060 GR=PEEK(197) ; IFGRO60THEN3060 

3 070 RETURN 

Program 4: ti-99/4A version 

lOO REM TI JUMPING JACK 

110 DIFF=1 

120 RESTORE 

130 RANDOMIZE 

140 CALL CLEAR 

150 SOSUB 1080 

160 PRINT "LEVEL: ■■; DIFF 

170 DIR=1 

180 PR=0 

190 FOR 1=2 TO 22 STEP 4 

200 CALL HCHAR ( I , 1 , 96, 32) 

210 IF I >20 THEN 270 

220 R=INT <RND«26+4) +DIR 

230 IF (SGN <R-PR) < >DIR) THEN 220 

240 CALL VCHAR < I , R, 104. 4) 

250 PR=R 

260 DIR=-DIR 

270 NEXT I 

280 CDL=2 

290 RDW=1 

30O CHAR=1 12 

310 OLDCOL=l 

320 0LDR0W=1 



a2 COMPUTIl Mavises 



330 
340 
3SO 
3iO 
370 
3BO 
390 
400 
410 
420 
430 

440 
450 
4iO 
470 
480 
490 
5 00 
510 
52 O 
530 
540 
550 
560 
S70 
5 BO 
590 
6O0 
610 
620 
630 
640 
650 
660 

670 
680 
690 
700 
710 
72 

730 
740 

7 50 
760 
770 
7SO 
790 

8 00 
8 It) 
820 
830 
840 
850 
860 
870 
BSO 
890 
900 

910 
920 
930 

940 
950 
960 
970 
980 
990 
lOOO 



0LDCHAR=32 

DrR=l 

CALL HCHAR <OLDROW, OLDCDL, 32) 

IF RND>DIFF/10 THEN 430 

R=INT (4»RND) 44+6 

C=INT (RND*32) +1 

CALL GCHAR(R,C,A) 

IF A=104 THEN 430 

CALL HCHAR (R, C, 120) 

CALL SOUND ( lOO, -1 ,4) 

CALL HCHAR (ROW^ COL, CHAR-2* <DIR< 

O) ) 

CALL S0UND(-5, -7, 4) 

IF R0W>20 THEN 990 

OLDCOL=COL 

OLDROW=ROW 

COL=CaL+DIR 

IF f COL>0) * (C0L<33) THEN 540 

COL=COL-DIR 

ROW=RDW+4 

DIR=-DIR 

GOTO 350 

CALL GCHAR<ROW+l , COL, CHECK) 

CALL KEY<0,K',ST) 

IF ST THEN 640 

IF CHECK=120 THEN 770 

IF CHECK<>104 THEN 610 

DIR=-DIR 

R0W=R0W+4 

CHAR=225-CHAR 

SCORE=SCDRE+. 5 

BDTD 350 

IF CHECK-; >120 THEN 1030 

CALL HCHAR (OLDROW.OLDCOL, 32) 

HCHAR<RGW-l,COL, 1122»iDIR 



CALL 
< O ) ) 
CALL 
CALL 
CALL 
CALL 



CDL, 12B) 



500, 1 , 510, 10, 52 



>0) 
COL, 32) 



SOUND (5, 250, 10) 

SOUND (5, 200, 10) 

SOUND (5, 300, 10) 

HCHAR CROW-1 
SC0RE=SC0RE+25 
CALL SOUND(-SOO. 
0,20) 

CALL SOUND (1,110, 
CALL HCHAR (ROW-1 
COL=COL+DIR 
GOTO 490 
CALL KEY(0,K,ST) 
IF ST THEN 580 

CALL HCHAR (OLDROW, OLDCOL, 32) 
CALL HCHAR (ROW, COL, 1 16) 
FDR 1=1000 TO 1O20 
CALL SOUND (-1,1,0) 
NEXT I 

CALL HCHAR (ROW, COL, 32) 
CALL HCHAR (ROW+1 , COL, 121 ) 
CALL SOUND ( 1000, -2, 4. 1 10, 4) 
CALL SOUND ( 1 , 1 lO, 1 ) 
CALL CLEAR 
CALL SCREEN(12> 
PRINT "YOUR SCORE WAS : " ; I NT ( SCO 



RE) 

PRINT : "PLAY A6A1N? (Y/N): 
CALL KEY (3, K . ST) 
IF (K< >ASC < " Y") ) t (K< > 
HEN 920 
PRINT CHR*(K) 
IF K = ASC ( "N" ) THEN 980 
SCORE=:0 
GOTO 1 10 
END 

DIFF=DIFF+1 
SC0RE=SCQRE+5 



ASC ( "N" ) ) T 



1010 
1020 
1O30 
1040 
105 
1060 
1070 
1080 

1090 
1 100 
1110 
1 120 
1 130 
1 140 
1 150 
1 160 
1 170 
1 180 
1 190 
1200 
1210 
1220 
1230 
1240 
1250 
1260 
1270 
1280 
1290 
1300 
1310 



CALL CLEAR 
GOTO 160 
FOR 1=150 T 
CALL SOUND ( 
NEXT I 
SCORE=SCORE 
GOTO 5BO 
REM INITITI 
ERS 

READ A 
IF A=-l THE 
READ A* 

CHAR (A 

109 

96, FF4 

104, 7E 

112 

1 13 

1 14 

115 

116, 00 

120, 81 

121 

128 

-1 

TO 



CALL 

GOTO 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

FOR 1=9 

READ A 

CALL 

NEXT 

DATA 

CALL 



O 140 STEP -1 
-1,1,1} 

-25 

ALIZE GAME, CHARACT 

N 1250 
A«) 



10 
10 
lO 
1 o 



BD 
OO 



224 

427 
283 
283 
2B1 
281 
1C5 
814 
BD5 
771 

13 



1818 
E427 
0247 
0A27 
8483 
84A3 
D2A1 

'->'->•-*•-> 

A222 
4774 



2442FF 

E427E42 

BBS2442 

C782448 

C3A4Ba4 

C3C4B24 

ClCi422 

42400C3 

42400C3 

177OOO0 



COLOR ( 
I 

6,4,14 
SCREEN 



I , A, 1 ) 

, lO, 12 
(16) 



RETURN 



@ 



COMPUTER /BASF 

-DPS 



|THE WORLD'S FINEST 

Data media for all microcomputers 
• Used nationwide by software 
manufacturers, hobbyists, schools and businesses 
• Premium 5-screw shell with leader fits all standard recorders 



CASSETTE STORAGE CADDY 



ORGANCE 
YCHJRTAPESM 




TRACTOR FEED 

DfE-CUT euWK 

CASSETTE LABCIS 



$2'=' EAOt 

GET ONE _, 

CADDY FREE! Buy 2 doz. Cassettes & One Caddy. Gel Ore Caitdy FREE 

• SATISFACTION GUARANTEED OR YOUR MONEY BACK • 

FOR IMMEDIATE SHIPMENT rAII 01^/710 l/IQCl 

USE YOUR VISA OR MASTERCARD UMLL fc I O/ f I U~ I HOU 



---.------.ORDER FORM---. .__._. 

ORDER NOW. . . MAIL TO: VORK 10'"ComputefUIQfe 



S^ori^CxM, iiaiia. 



QM»tf» ZcrmrnTAM U^ *DD %J 



24573 KiHridQe Si . *CM, CanoQa Park, CA 91307 
Eich cjutne incliidBi Iwa YORK 10 labals oriy Botes at 
told sepaniHy. Shipmcols tte bir u P.S jnieti Paicil Poii 
rBquesiBtf. Boies, ciddics. ind blank fibsls are ir«v ol 
thipping chargts wtien ordered with cau«rtei Whan or- 
flared wrthQui niienet. ihipping cAarges Boias— Si DO 
doz,. CiddiBS— Sl.OO eacfi. MINIMUM SHIPPIKG.KAJN 
DLIMG ON ANT DROER-^Z.OD 



f Credit C*rd 
yA$IERCARD 
- PLEASE SEMD OUAMtrrr BSCOUWTS 



AMths 


Crty 


$t«t«/£v 




Card NO 




E» 


StgnMMa 



Moyl983 COMPUret 43 



Atari's New 

Add-On Computer 

For VCS 2600 

Game Machine 



Tom R, Halfhill, Features Editor 




A new add-on keyboard unit from 
Atari will turn the zvorid's most 
popular video game machine 
into a home computer - for 
under $90. 



Atari's announcement 

of a plug-in computer 

keyboard for the VCS 

2600 game machine 

adds yet another 

contender to the growing 

field of sub- SlOO home 

computers. But more than that, this 

may well be a move to capture the huge 

number of VCS owners who are considered 

prime candiciates to buy a home computer. 

Smce 1977, when the VCS {Video Computer 
System) was first introduced, more than ten mil- 
lion have been sold - far more than any other 
game machine. That massive "installed base," as 
it's called by marketing people, represents a luc- 
rative market for the new computer keyboard. 
What's more, by announcing the product so far in 
advance (the keyboard is not scheduled for de- 
livery until September 1) perhaps Atari hopes 
that many of these ten million potential customers 
will put off buying a competing model in the 
meantime. 

My First Computer 

So how will the new computer stack up against 
the competition? Atari's early specifications 

iA COMPUn' Mov1983 



indicate it will be a solid 

contender, unless new computers 

introduced this summer by 

competitors radically 

change the under- 

SlOti market. 

Atari's official 
name ior the key- 
board unit is "My 
First Computer." 
Expected to retail 
for under $90, My 
First Computer clamps 
onto the VCS piggy- 
back-style, plugging 
into the game machine's 
cartridge slot. No other 
connections are needed. 
The marriage "^^^ is more or less permanent, 
since the VCS can still be used as a game machine 
bv plugging cartridges into an expansion slot on 
the side of the computer. 

My First Computer's keyboard consists of 56 
moving rubber keys, arranged typewriter-style 
(QWERTY). Although not quite a full-stroke type- 
writer keyboard, the partial-stroke rubber keys cio 
have a better feel than the Atari 400's flat mem- 
brane keyboard. The rubber keys arc very similar 
to those found on several other low-end home 
computers recently introduced (see "New Home 
Computers At The Winter Consumer Electronics 
Show," COMPUTE!, March 1983). 

Standard features include 8K of Random Ac- 
cess Memory (RAM), expandable to 32K RAM; 
16K of Read-Only Memory (ROM), which includes 



THE GALAXY AWAITS YOUR COMMAND. 



&m 



When SSI introduced THE COSMIC BALANCE'; it was hailed as one of the finest tactical 
space 3ame ever made: It not only save you starship combat that was fun, fast and furious, it 
also let you desisn-your ships, you became both starfleet commander anci starship architect. 
. Now we are proud to present its strategic-level sequel - THE COSMIC BALANCE II"; It 
allows all 'you aspiring Galacbc Emperors out there to plot the srowth of your Space kinsdorp 
- from a fiew, paltry planets to the entire Galaxy! Vou discover and coloniee planets, establish 
commerce nets, organize production of necessities, and send starships out on missions. There 
are .five scenar-ios prepared for you, but you aro. free to create your own. 

No matter how you play it, THE COSMIC BALANCE IP is a game of interstellar conquest. 
And the only way you're going to enlarge your share of the cosmic pie is to win -starship 
battles against your opponent (which can be a human or the computer). 

When actual combat occurs, you can let the computer resolve it instantly. Or you can slug 
it out in all itst>la2ing glory by using TME COSMIC BALANCE" The battle outcome can then toe 
incorporated Jnto the strategic game. . . ' ' 

Space rnay be what these games are all about, but there isn't enough-of it here to 
adequately describe them,.- But why read when the Universe beckons? Plot a course to the 
nearest computer/game store and get these games tc^Jay! You have a'dcstiny to fulfill - a 
destiny that lies out there among the stars, . ' ' ■" . 



^ 



c^ 



nf 



on DISC FOR 
THE APPLE® 
AND ATARI®. 

THE COSMIC BALANCE & 
THE COSMIC BALANCE II 

. (S39.95- each) are on 
-48K diskette for the 
Apple 11+ or Apple II 
with Applesoft ROM ■ 
Card. Also on 48K" disk 
for the Atari -iOC'SOO. 



Apple >s a registered trademark of Appie Compuier, lac. 




^ GAMES FROM SSI A:..' :so ■cgistcredtradctDaiJcof Atafi Inc. 

'enient stores n'earyou, vrSAand MASTERCARD . To order by mail, send your check tO: Strategic Simulations Inc. 

ect by calling 800-227-1 61 7,,x335 (toll free). 465 Fairchild Drive, Suite 108, Mountain Vsew, CA 94043, California 
772-3545, .x335. 'residents, add 6 ',-5% sales tax, • 

WRITE FOR A FREE COLOR CATALOG OF ALL OUR GAMES. 



If: there are no convenient stores n'ear you, VISA and MASTERCARD 
holders- can order direct by calling 800-227-1617, x335 (toll free). 
In Californid. call 800-772-3545, .x335. 



an 8K BASIC programming language; upper- and 
lowercase characters; a 16-color display, with eight 
luminances (shades) per color, for a total of 128 
hues; screen format of 32 columns by 24 rows; 
maximum graphics resolution of 192 by 160 pixels 
(screen dots); two sound generators; a built-in 
interface for storing programs on any standard 
cassette recorder; and an expansion slot for plug- 
ging in game cartridges, memory expanders, and 
peripherals. 

Microsoft Strings 

The new computer's Central Processing Unit- 
the microprocessor chip that is the central brain 
of a microcomputer - is the widely used 6502. 
This chip is also found in Atari's existing home 
computers, the 400, 800, and 1200XL, as well as in 
some competitors. However, My First Computer 
will not be software or hardware compatible with 
Atari's other computers. The 8K BASIC in the 
new computer will be a cross between the existing 
Atari BASIC and the more generally used Micro- 
soft BASIC. The string-handling, for example, 
will conform more closely to Microsoft BASIC 
than Atari BASIC'S nonstandard approach. Al- 
though design work on the BASIC and Operating 
System is not finished, one of Atari's goals is to 
include special statements for graphics and sound 
in the language, as found in Atari BASIC. 

Since the existing Atari peripherals will not 
work with My First Computer, a new lino of low- 
cost add-ons is being planned. This will include a 
ptinter and some type of fast mass storage device, 
either a minifloppy disk drive or some other alter- 
native. Atari is not ruling out the possibility of a 
microfloppy disk drive or a stringy floppy wafer- 
tape drive, because it wants to keep the cost of 
the peripherals comparable to the cost of the com- 
puter. Atari's current disk drive for its 400/800/ 
1200XL models retails for about $500. 

"We don't see a lot of rationale in offering a 
$500 add-on for a base unit that will sell for under 
$90," savs Bill Simmeth, project manager for My 
First Computer. "Some other types of technologies 
look attractive to us." 

Graphics 

Simmeth said it is still too early to say if My First 
Computer will have advanced graphics capabil- 
ities such as programmable characters and player/ 
missile graphics (sprites). But he did say that it 
will have several graphics modes, that more than 
two voices will be possible through programming, 
and that the VCS's chips will be handling some 
graphics processing to relieve the6502's workload. 
"It will be like a dual-processing system, similar 
to the [existing Atari) computers, although not 
exactly alike. People will not be buying just a toy. 
They're buying quite a nice, and a quite compar- 

46 COMPUTf! MoylflSa 



able, real computer." 

Atari plans to introduce about 20 cartridges 
for My First Computer when it is delivered, in- 
cluding a new line of enhanced games and home 
application programs. Software may also be sold 
on cassettes. 

Interestingly, Atari says it does not consider 
its main compehtion for the new computer to be 
the similar add-on keyboards for competing game 
machines, the $150 Mattel Intellivision and $170 
Colecovision attachments. Instead, Atari is aiming 
its new model at home computers such as the $99 
Timex/Sinclair, the new $99 Texas Instruments Tl- 
99/2, and the Commodore VlC-20, which may 
drop below $100 by the time My First Computer 
is ready. To complicate this low-end market still 
further, later this year Atari may introduce a 
keyboard attachment for its newer, more ad- 
vanced game machine, the 3200. However, no 
details of this project are being released. 

Atari also says My First Computer will not 
compete with its own Atari 400, which is selling 
for less than $200. "My First Computer is the mis- 
sing link between video games and computers," 
says Michelle Simpson, an Atari spokesperson. 
"We don't see it as competing with our own com- 
puters. We see them as different models, like the 
different models produced by a car company." © 



ATARI*800^ 
OWNERS 

with 3 16K Memory Boards 



Question #2: 

What's the most efficient 
way to maintain memory 
and increase your options 
using your memory slots? 

A. Growth hormones 

B. Phone home 

C. The Mosaic Adapter 

D. Scalpel 

E. All of the above 



joj MOU tiep e io\s usdo ub miM pMva ^fif? noA ssmV siiu, 
■piEoq jajcfepp dibsoj^ auo ojuo }[} spjEoq j^iVH peiv OMj 
uiojj sd!43 lAiva am „,>131cIVaV DIVSOIV 3HJ, ua/wsuy 




We've Got More Than A 
Fond Attachment For Your 

ATARI 

We've Got A Disk Drive For $488. 

Percom Data Corporation believes your Atari' home cooipufer is more than just 
fun and games. We believe you should be able to get a single-density, lloppy-disk- 
system for your Atari 400 or 800 at a price that will take you into the future without 
knocking you into the next galaxy 

Percom Data has been manulacturing disk-drive systems, and other accessories 
for personal computers since the mid-1970's and is the industry standard to 
follow when it comes to data separation and system compaJibility, 

The Percom Data AT-88 combines Percom Data quality and reliability at a price 
that is not a budget-buster 

The Percom Data AT-88 offers 88 Kbytes (formatted) in single-density w/ilh plug- 
in ease of attachment to your Atari. The AT-88 has integral power supply "no- 
patch" to Atari DOS and critical constant speed regulation. 
Take advantage of this low introductory price of S488 by calling Percom Data now 
to get more information, or the name of an authorized dealer nearby Call toll-free 

1-800-527-1222 



[?mm mx] 



CORPORA! ION 

Expanding Your Peripheral Vision 



DRIVES * NETWORKS * SO FT WA R E 



1 1220 Pagemiil Road Dallas, Texas 75243 (2U) 340-7081 
— 1-80O-527-1222 



■Mail 4aaaM is t irsdcmark 



One On One 



Chris York 



"One Oil 0}>t'" ;'s ca^i/ to Icani, Iml )tot lytsi/ Io nHifitcy. 
Written ori;^iiialh/ for the Atari, it has bcoi trinislatcd for 
VIC, 64, and Apple. The VIC mid 64 versio)is include 
tioo skill levels and a sn^^gestioji for chnngiji^ the object of 
tliegauie. 



In "One On One," two players go head to head in 
an attempt to knock down the wall their opponent 
is protecting. 

The Atari version can be plaved with joysticks, 
plugged into control ports one and two, or with 
paddles, plugged into port number one. In the 
game, player one tries to protect the wall at the top 
of the screen, and player two cietends the wall at 
the bottom. 

The player's paddle (horizontal line closest to 
the middle section ot' the screen) is used to intercept 
the ball before it hits his wall and destroys a section. 
When the ball hits either player's paddle, it bounces 
toward the opponent's wall. Hn route, the flight of 
the ball may be changed or impeded by barriers or 
additional sections of wall which sen^c to make the 
game faster and more exciting. 

Eventually, one or both players will lose enough 
wall so that the ball can go through it. The first player 
to get the ball past his opponent's wall wins the 
game and receives an appropriate victory message. 

One On One is easy to learn and challenging. 
You'll keep coming back to play it again and again. 



Program 1: Atari version 




A ninllkolorcd clmyaclcr mode is !i>cd to /ir;'\;/;/cj/ up the 

screen in the Atari version of "One on One. " (Other versions 

similar.) 

46 coMPini! Movi^sa 



100 SCREEN = PEEK ( 38 > +25&*PEEK <a9) : GOT 

580 
110 REM JOYSTICK SUBROUTINE 
120 XOLD0=X0 
130 IF STICK<0)=11 THEN X 0= X 0-3 * S6N ( 

X0-2) 
140 IF STICK<0)=7 THEN X 0= X 0+ 3 t SGN < 3 

5-X0) 
150 IF X0=XDLD0 THEN 170 
160 P0SITI0r4 XDLD0, 7: PR INT " 

<;3 BPACES>" 
170 POSITION X0,7:PRINT PI* 
180 X0LD1=X1 
190 IF STICK(1)=11 THEN X1=X1-3*S6N( 

X 1-2) 
200 IF STICK<1)=7 THEN X 1 = X 1 +3 « SEN < 3 

5-X 1 ) 
210 IF X1=XDLD1 THEN 230 
220 POSITION XDLDl , li: PR INT " 

iZ SPACEB>" 
230 POSITION X1.1A:PRINT Pl$ 
240 RETURN 

2S0 REM PADDLE SUBROUTINE 
260 XOLD0=X0 

270 X0=3S-INT (PADDLE (0 ) /6. 75> 
280 IF X0=XOLD0 THEN 300 
290 POSITION XOLD0. 7: PRINT " 

<3 SPACES!" 
300 POSITION X0. 7 -.PRINT PI* 
310 XOLDl=Xl 

320 X 1=35-INT (PADDLE ( 1 ) /6. 75) 
330 IF X1=XDLD1 THEN 350 
340 POSITION XOLDl , 16: PRINT " 

iz spaces; " 

350 POSITION X1,I6:PRINT Pit 

360 RETURN 

370 POSITION 6,0;PRINT "PRESS SPACES 

AR TO START GAME" 
330 POKE 764 , 255 

390 IF PEEK (764) =33 THEN 4 10 
400 GOSUB BLINE:GaTD 390 
4 10 POSITION 6,0: FOR X = i TO 32: PR I NT 

" ";: NEXT X: POKE DL- 1,4+64 
420 SOUND 0, 50, 10, 8: FDR X=i TO 75 
430 NEXT XiSDUND 0,0,0,0 
440 BX=INT<B*RND<1))+16:BY=9:DX=1:DY 

= 1 
450 IF RND(0)<0-5 THEN DX=-1 
460 IF RND(0)<.0.5 THEN DY = -1:BY=14 
470 POSITION BX,BY:PR1NT " " ; 
480 BX=BX+DX : By = BY + DV- POSITION BX,BY 

:PRINT "CT>";:REM BALL(CNTL-T) 
490 IF L=Ba AND OLDL=88 THEN 510 
500, IF L=83 THEN SOUND . 50 , 1 , 1 : FO 

R X=l TO 15:NEXT X : SOUND 0,0,0,0 

: DY=-DY 
il0 GOSUB BL1NE:IF BY<2 OR BY>21 THE 

N B70 



FROIV1: CREATIVE SOFTWMiE 
TO: VIC-20 OWNERS 

RE; NEW TITLES- MARCH 1,1983, 




TAPE CASSETTE fOR USE WITH THE COMMODORE VIC-20 

VI HOI 



HOW CAN YOU BE CREATIVE 
IF YOUR SOFTWARE ISNT? 



/fflv' 



AQiuision ol ASCI. Ill 

■"^^l^^^ 230 E. Caribbean • Sunnyvale, CA 94086 



Copyright 1983 by Creative Software 

"VIC-20" and "COMMODORE" are 
trademarks of COMMODORE ELECTRONICS, LTD. 



520 OLDL=L 

530 LOCATE B X +DX , BY + D Y , L 

540 IF L=32 THEN 470 

550 IF L=l'? THEN SOUND , 1 00 , 1 , 1 : F 

OR X=l TO 15:NEXT X : SOUND 0,0.0, 

0: DX=-DX:GOTO 530 
560 IF L=ia THEN SOUND . 1 00 , 1 , 1 ; F 

OR X=l TO 15:NEXT X : SOUND 0,0,0, 

0: DY=-DY 
570 GOTO 470 

580 GRAPHICS 2:SETCDLDR 2,0,0 
590 SETCOLOR 0,7,10 
600 POSITION 4,4 
610 PRINT #6; "ONE ON ONE ! " 
620 POSITION 3, 5 
630 PRINT " JOYSTICKS OR PADDLES (i 

OR 2) " ; : INPUT BLOCK 
640 IF BL0CK=1 THEN BL I NE= 1 1 : GOTO 6 

60 
650 BLINE=240 
660 DIM Pi* (3) , At ( 36) 

670 Pl*="<:3 R>":REM PADDLE < CNTL-R ) 
680 A4="XXXXXXXXXXXXXXXXXXXXXXXXXXXX 

XXXXXXXX" 
690 GRAPHICS 0:SETCDLOR 4,0,12:SETCO 

LOR 2, 2, 10:SETCOLOR 1,15,10 
700 DL= PEEK (560) +256* PEEK (56 1) +4: FOR 

1=2 TO 24:PQKE DL+I,4:NEXT I 
710 BARVeRT=83: REM VERTICAL BARCCNTL 

-Y) 
720 FDR 1=2 TO 21 

730 POKE SCREEN+1+I «40, BARVERT 
740 POKE SCREEN+3B+I «40, BARVERT 
750 NEXT I 
760 FDR Y = 2 TO 13 STEP 16-.POSITION 2 

, Y: FOR X=l TO 4 
770 PRINT A*:NEXT X:NEXT Y:SETCOLOR 

1,12,7 
780 FOR X=5 TO 34 STEP 29: FOR Y=10 T 

O 13:P0KE SCREEN+X+Y«40,a3:NEXT 

Y:NEXT X 
790 FOR X=14 TO 25 STEP 1 1 : FOR Z=9 T 

O 12 STEP 3:F0R Y=Z TO Z+2:P0KE 

SCREEN-t-X+Y*40, 83: NEXT YsNEXT Z:N 

EXT X 
800 FOR X=e TO 23 STEP 10:POSITION X 

,11:PRINT "XXXX" ;: POSITION X,12: 

PRINT " X XXX " ; : NEXT X 
S10 X0=29:X1=2 
820 IF BLOCK=2 THEN 370 
830 POSITION X0,7:PRINT P1«:REM JOYS 

TICK ONLY 
840 POSITION X1,16:PRINT P1*:REM JOY 

STICK ONLY 
850 POKE 752, 1 
860 GOTO 370 

870 SOUND 0, 72, 10, 8: GOSUB 1050 
880 SOUND 0, 64, 10, 8: BDSUB 1050 
890 SOUND 0, 60, 10, 8: SOSUB 1050 
900 SOUND 0, 72, 10, a : BOSUB 1050 
910 SOUND 0, 64, 10, 8: 6DSUB 1050 
920 SOUND 0, 72, 10, B: GOSUB 1050 
930 WW=WW+i:IF WW<3 THEN 870 
940 WW=0 

950 POSITION BX,BY:PRINT " " ; 
960 POKE DL-1 , 2+64 : POSITION 2,0 
970 IF BY>21 THEN PRINT " 1 ! • ! ! I V I CTO 

RY GOES TO PLAYER 1 ' ' I ! i ! " ; 
980 IF BY<2 THEN PRINT " ! I ! ! ! ! V I CTOR 

Y GOES TO PLAYER 2 ! ! i ! M " ; 
990 FOR 1=12 TO 1 3 : POKE DL+ I , 2 : NEX T 

I 

50 COMPUIB May19B3 



1000 



1010 



1020 



1030 



1040 
1050 
1060 



POSITION 2. 
AIN, PRESS 



1 1 : PRINT 
THE FIRE 



"TO PLAY AG 
BUTTON ":PRI 
PRESS Q 



NT "ON EITHER JOYSTICK 

TO QUIT . " 
IF STRIG(0)=0 OR STRIG(1)=0 THE 
N 690 

IF PTRI6(0)=0 
N 690 

IF PEEK (764) =47 THEN POKE 
55:6RAPHICS 0:PRINT "TYPE 

TO ERASE PROGRAM. ": END 
GOTO 1010 

FOR X=l TO 10:NEXT X 
SOUND 0, 0, . 0: RETURN 



OR PTRIG ( 1 ) =0 THE 



764, 2 
<NEW> 



VIC Version 



The VIC version uses game paddles plugged 
into the control port. It has two skill levels. At 
level one, all ball movement is at a 45 degree 
angle with respect to the X and Y axis. Level 
two allows the players to double the horizontal 
increment of the ball by striking it with a 
moving paddle. The subroutine from lines 160 
to 220 determines if the paddle has changed 
from its last position. If the paddle position 
changes just before the baU strikes it, then the 
resulting horizontal motion of the ball becomes 
twice as fast. The vertical increment of the 
ball, however, always stays the same. Either 
player can slow the ball to the usual diagonal 
motion by allowing the ball to strike a station- 
ary paddle. 

The wall that each player must defend is 
generated with random brick colors in lines 
420 to 440. The game will look different each 
time it is played. 

If you become truly proficient at One On 
One, you might change the game so that the 
object is to break through the wall behind your 
paddle. This speeds up the action considerably, 
as you attempt to maintain control of the ball. 
Giving control of the ball to your opponent, of 
course, allows him to destroy his waU and 
defeat you even sooner. 



Program 2: vie version 



100 Nl=l:N2=32:N3=81:N4=4:NS=248:N6=249:N7 

=132:N8=352:N9=2 
110 CL=37154:P5=37152:P4=37151:M1=0:M2=23: 

M3=102:M4=220iM5=160:M6=15.93tG=l 

8:M8=16 
120 GOTO 340 
130 L5=PEEK(SCREEN+X+(Y+DY)*C) :IF L5=N5 OR 

L5=N6 THEN DX=-DX: DY=-DY: RETURN 
140 IF PEEK(SCREEN+X+DX+Y*C)=M3 THEN DX=-D 

X: RETURN 
150 DY=-DY: RETURN 
160 IF DX=-2 THEN DX=-1 
170 IF DX=2 THEN DX=1 
180 IF Y+DY=M8 THEN 210 
190 X0=G-INT(PEEK(P0)/m6) :IF X0OL0 THEN D 

X=2*DX 



V>^gJj^W■■■tit«!^?'•^>*,■■,r■•'iv - T , 



^^? 




UMI sofl:ware...aworld of choices 



A World of Fun! They're hot! They're new! The 
exceptional graphics and challenging play of UMI's 
games have made United Microware the leader in 
arcade-quality recreational software. 
A World of Help! UMI has created programs to 
help professionals and homeowners "take care of 
business." UMI can make your life a little easier 
with word processing, information storage, finan- 
cial management, hobbyist programs, utilities and 
communication programs — all with easy-to- 
understand instructions. 
A World of Choices! All programs come on cas- 



settes or UMI's own durable cartridges, depending 
on your selection. If you're looking for fun, or for 
an easier way to manage your personal business, 
look to UMI ... the leader you can trust. UMI 
products are available at your favorite computer 
products store. 

Dealer inquiries invited. 



United Microware Industries, Inc. 
3503-C Temple Avenue 
Pomona, California 91768 
(714)594-1351 



^^^ 



200 RETURN 

210 X1=G-INT(PEEKCP1)/M6):IF XlOLl THEN D 

X=2*DX 
220 RETURN 
230 X0=G-INT(PEEK(P0)/m6) :IF X0=L0 THEN RE 

TURN: REM PADDLE MOVEMENT 
240 V=SCREEN+N7+L0:POKE V,N2:P0KE V+A,N1 
250 POKE V+N1,N2:P0KE V+N1+A,N1 
260 V=SCREEN+N7+X0:POKE V,N5:P0KE V+A,N4 

2 70 POKE V+Nl,tlS :POKE V+Kl+A, N4 :L0=X0 : RETU 

RN 
280 X1=G-INT(PEEK(P1)/m6) :IF X1=H THEN RE 

TURN 
290 V=SCREEN+N8+Ll:POKEV,N2:POKE V+A,N1 

3 00 P0KEV+N1,N2:P0KE V+A+N1,N1 

310 V=SCREEN+N8+X1 :POKE V,N6:P0KE V+A,N4 
320 POKE V+Nl,N6:POKE V+Nl+A, N4:L1=X1 :RETU 

RN 
330 POKE V1,15:POKESI,S5:FORI=1TO30:NEXT:P 

OKEVl , : POKES 1,0: RETURN 
340 POKE 36879, 31 : PRINT" (clear} " 
350 PRINT"[0a down} £05 RIGHT}0NE on ONEl" 
360 PRINT :PRINT; INPUT" l04 RIGHTJlEVEL 1 OR 

2 " ; LV 
370 SCREEN=256*PEEKC64B) : A=30720 :X=RND{0 ) 
380 IF PEEK(648)=16 THEN A=33792 
3 90 Vl=36878: 31=35876 :P0=36872:P1=3687 3 :C= 

22:X0=2:X1=18 
400 DEFFNA{U)=SCREEN+X+C*Y:DEFFNC(U)=FNA{U 

)+A:DEFFNB(U)=INTCU*RND(1) )+2 
410 PRINT" {clear} " 
420 FOR Z=1T018STEP 17 
430 FOR Y=ZTO Z+3:FOR X=2 TO 19: POKE FNAC0 

),I60 
440 POKE FNCC0),FNB(6>:NEXT:NEXT:NEXT 
450 FORZ=0TO20STEP20:FORX=ZTOZ+1:FORY=0TO2 

2: POKE FNA(0) , 102:POKE FNCC0),2 
460 NEXT : NEXT : NEXT 
470 FORZ=6TO13STEP7:FORX=ZTOZ+2:FORY=10TO1 

2:POKEFNA(0),102 
480 POKE FNC ( ), 2 : NEXT : NEXT ; NEXT 
490 GOSUB 260:GOSUB 310 

500 PRINT" lUP} [02 right} PRESS IGRN}sEBLK} 

TO START"; 
510 GET A$:IF A5="S" THEN 530 
520 GOSUB 230: GOSUB 280:GOTO 510 
530 FOR 1=1 TO 17:PRINT" {02 LEFT) " ; :FORJ= 

1 TO50: NEXT: NEXT 
540 REM START GAME 
550 X=11:Y=11:DX=1:DY=1 
560 IF RND(1)<.5 THEN DX=-1 
570 IF RND(1)<.5 THEN DY=-1 

5 80 GOTO 660 

590 POKE FNA(0) ,N2:POKE FNC(0) , Nl :L6=PEEK( 

SCR£EN+X+DX/2+(DY+Y)*C) 
600 I FABS ( DX ) =2 ANDL6 < >M3 ANDL6 < >N5ANDL6<>N6 

THEN 620 
610 X=X+DX:Y=Y+DY:GOTO 630 

6 20 X=X+DX/2:Y=Y+DY:POKEFNA(0),N2:POKEFNC( 

0),Nl:X=X+DX/2 
630 POKE FNA(0),N3;POKE FNC(0),N4:IF Y>4 A 

ND Y<18 THEN FL=0 
640 IF(L=M5AND0LDL=M5)0R(L=M5ANDFL=1)THEN 

S5=M5: GOSUB 3 30: GOTO 660 
650 IF L=M5 THEN S5=M5;GOSUB 330 ;DY=-DY:IF 

Y<50RY>17 THEN FL=1 
660 GOSUB 230:GOSUB 280; IF Y=M1 OR Y=M2 TH 

EN 740 
6 70 OLDL=L 

680 L=PEEK{SCREEN+X+DX+(Y+DY)*C) 
690 IF L=N2 THEN 590 



700 IFL=H3THEN S5=M4 ;GOSUB330:GOSUB 130:GO 

TO 680 
710 IF(L=N50RL=N6)ANDLV=1THEN S5=M4:G0SUB " 

3 30:DY=-DY 
7 20 IF(L=N50RL=N6)ANDLV=2THEN S5=M4:G0SUB ' 

3 30:GOSUB 160 :DY=-DY: goto 680 
7 30 GOTO 590 
740 IF Y=M2 then PRINT" {hOMeI {02 RIGHT} IIP 

LAYER 1 WINS I 1 I" 
750 IF Y=M1 THEN PRINT" {HOME} {02 RIGHT} 1 IP 

LAYER 2 WINS I 1 1" 
760 GOSUB 830 
770 PRINT" {12 down} {right} PRESS FIRE BUTTO 

N TO": PRINT" (right} PLAY AGAIN, {GR 

GRN}q{BLK} TO QUIT" 
780 POKE CL,127:P=PEEK(P5)AND128 
7 90 FR=-(P=0) :POKE CL, 2 55 ;P=PEEK(P4) : FL=- { 

{PAND16)=0) 
800 IF FL=1 OR FR=l THEN 340 
810 GET A$:IF A$<>"Q" THEN 780 
820 PRINT" {clear} ": END 
830 POKEV1,15:FORI=230TO252STEP2:POKE3687 5 

, I s FORJ=1TO50 jNEXT t NEXT 
840 POKE 36875,0; POKE VI, 0: RETURN 



CBM-64 Version 

The Commodore 64 version of One On One is 
designed to be played using two joysticks. 
Since barriers are placed in symmetrical posi- 
tions in the central portion of the screen, the 
ball may rebound four or five times before 
reaching an opponent. This provides for a 
more challenging defensive strategy and a 
faster moving game. If you would like to adapt 
this program for use v/ith paddles, substitute 
these lines: 

11 AL = (36-(INT(F2/8.S)+3» 

THEN 17 
19 F2 = PEEK(54297):GOTO10 
51 AR = (36-(INT(Fl/8.5) + 3)) 

THEN 57 
59 Fl = PEEK(54298):GOTO SO 



Program 3: cbm-64 version 

REM: ONE ON ONE FOR CBM-54 

1 POKE646,l 

2 PRINT" {rev} {clear} (11 RIGHT} {10 DOWN) ~ 

ONE ON ONEl ! t{OFF}"; 

3 PRINT" {rev} (17 left} {03 D0WN}PRESS SPA 

CE TO PLAY {off} "; 

4 POKE53281,0:IFPEEK(197)<>60THEN4 

5 GOTO100 

9 AL=15:G0T019 

10 ODDAL=AL 

11 AL=AL+F2:IFAL=ODDALTHEN17 

12 IFAL<4 THENAL=3 

1 3 POKEG+ODDAL ,32: POKEG+ODDAL+1 ,32: POKEG+ 

ODDAL+2 ,32: POKEG+ODDAL+3 , 3 2 

14 IFAL>=33THENAL=3 3 

1 5 POKEG+AL ,120: POKEG+AL+1 ,120: POKEG+AL+2 

, 120;POKEG+AL+3, 120 

1 6 POKEG+AL+D , 7 : POKEG+AL+D+1 , 7 : POKEG+AL+2 

+D , 7 : P0KEG+AL+3+D , 7 

17 RETURN 



52 COMPOTE! rvta/We3 



YOirVE GOT TO PlAY IT 
TOBEUEVEm 



Four great games from 
Commercial Data Systems bring 
more excitement to the VIC-20* 

CDS offers better movement, 
better sound and more realistic 
characters. You'll find it all by 
playing these super-color 
games: 

ROAD TOAD 

Leaping its way to become the 
#1 frog game ever! 

BUG SPREE 

A fast-paced battle game, w/ith 
bugs, mushrooms and spiders, 
attracts young and old alike. 



*VIC-20 Reg. trade mark of 
Commodore Business 
Machines. Some games also 
available for Commodore 64. 



MOTOR MOUSE 

A race against the clock with 
mice, cats and cheese. 

WITCH WAY 

This one is barrels of fun and 
requires an 8K Expander. Nine 
levels of action with four 
screens. 

All games programmed in 
machine language. 



ROAD TOAD, BUG SPREE, 
MOTOR MOUSE and WITCH 
WAY are available at the 
suggested retail price of $29.95 
(U.S.) each from your dealer or: 






Commercial Data Systems Ltd. 
730 Eastview Avenue, 
Regina, Saskatchewan 
Canada S4N 0A2 
(306) 525-3386 






s4. 



<.m 



^^rSai.=.^v 



■i^^^ 



iSfe*K2 



m^ 



19 0N( {PEEK(56321)AND12)/4)GOTO20, 30,40: 

20 F2=3:GOTO10 
30 F2=-3:GOTO10 
40 F2=0:GOTO10 

49 GOT059 

50 ODDAR=AR 

51 AR=AR+F1 

52 IFAR<4 THENAR=3 

53 POKEF+ODDAR,32 :POKEP+ODDAR+l , 32 : POKEF+ 

ODDAR+2 ,32 :P0KEF+ODDAR+3 ,32 

54 IFAR>=33THENAR=33 

5 5 POKEF+AR ,121; POKEF+AR+1 ,121: POKEF+AR+2 

, 121 :P0KEF+AR+3, 121 
5 6 POKEF+AR+D , 7 : POKEF+AR+D+1 , 7 : POKEF+AR+2 

+D , 7 ; P0KEF+AR+3+D , 7 
5 7 RETURN 

59 0N( (PEEK(56320)AND12)/4)GOTO60,70,80: 

60 Fl=3:GOTO50 
70 F1=-3;GOTO50 
80 F1=0:GOTO50 

100 B=1026:E=1060:D=54272:POKE53281, 1:P0KE 
53280, liPRINT" {clear! "; :C=1226:F= 
1260 

102 F=1024+40*6:SCR=1024:G=1024+40*14 

110 FORL=lTO4:B=B+40:E=E+40 

120 FORI=BTOE:POKEI,160:POKEI+D, (8*RND(l) ) 
+2; NEXT 

130 NEXT: IF Z=1THEN150 

140 B=1626:E=1660:Z=1:GOTO110 

150 FORS=1024TO1877STEP40:POKES, 127:POKES+ 
3 7,127: POKES+D , : POKES+3 7+D , :NEX 

T 

151 FORS=1025TOia77STEP40 :POKES, 127 :POKES+ 
3 7,127: POKES+D , : POKES+3 7+D , : NEX 

T 
160 REM SCREEN & BACKGROUND 
165 FORC=1TO30STEP4:POKE1428+C,90:POKE1428 

+C+D,0:NEXT 

171 POKEG+1 5 ,120 : POKEG+15+1 ,120: POKEG+1 5+2 
,120:POKEG+15+3,120 

1 72 POKEG+1 5+D , 7 : POKEG+1 5+D+l , 7 : POKEG+15+2 
+D,7 :POKEG+15+3+D,7 

173 POKEF+15,121:POKEF+15+l,121:POKEF+15+2 
,121tPOKEF+15+3,121 

174 POKEF+15+D,7:POKEF+15+D+l,7:POKEF+15+2 
+D,7:POKEF+15+3+D,7 

180 Y=ll:DX=liDY=l:X=ll 
190 IFRND(1)<.5THENDX=-1 

200 IFRND{1)<.5THENDY=-1 

201 AR=15:AL=15 

208 POKE1024+X+40*Y,32:POKE1024+X+40*Y+D,0 

209 X=X+DX:Y=Y+DY:POKE1024+X+40*Y,81:POKE1 
24+X+40*Y+D,8 

235 IFL=160ANDOLDL=150THEN245 

2 37 IFL=160THENDY=-DY:GOSUB500 

245 GOSUB49:GOSUB19:IFY=0ORY=23THEN990 

2 50 OLDL=L 

260 L=PEEK(SCR+X+DX+(Y+DY)*40) 

2 70 lFL=32THEN20a 

2 80 IFL=1 27THENDX=-DX : GOSUB500 : GOTO260 

2 90 IFL=121ORL=120ORL=90THENDY=-DY:GOSUB50 


300 GOTO208 
500 5=5427 2 !FORQ=STOS+24:POKEQ,0: NEXT: POKE 

S+5 ,88 :POKES+24, 15 :P0KES+1 , 10 
510 POKES , 143 : FORRD=1TO50 : NEXT : RETURN 
990 POKE646,0 
1000 IFY<1THENPRINT"U2 RIGHT) (09 DOWN) I 

REV)PLAYER 1 WlNSl I (oFF) " !GOTO250 


1010 FORA=lTO30iGETA$!NEXT 



2000 IFY>22THENPRINT"lll RIGHT) {09 DOWN) t 
REV)PLAYER 2 WINSU {OFF) " ; GOTO250 


2010 FORA=1TO30;GETA$;NEXT 

2500 PRINT" {10 RIGHT) {12 DOWN) { REV ) PLAY AGA 
IN? Y OR N{0FF) " 

2510 IFPEEK{197)=25THEN2515 

2511 IFPEEK(197)=39THEN2520 

2512 GOTO2510 

2 515 IFPEEK(l97)=25THENPOKE646,liRUN 
2 520 END 



Apple Version 

On the Apple, One On One is played with 
the paddles and has two skill levels. At level 
one, all ball movement is strictly 45 degrees 
with respect to the X and Y axis. After a short 
period of play, you'll probably be ready to 
move on to level two, where the ball angle 
can be altered. 

At level two, the flight of the ball can be 
changed from the usual diagonal motion by 
moving the paddle just prior to the moment 
the ball strikes it. If this is successfully ac- 
complished (as detected in lines 18 to 28), 
the X increment of the ball is doubled so that 
the ball moves twice as fast horizontally. 
Vertical ball movement, on the other hand, 
remains the same. In order to return to nor- 
mal ball motion, the ball must strike a sta- 
tionary paddle. 

An especially pleasing feature of the 
Apple version is the random choice of wall 
colors each time a new game is played. This 
is carried out in the short subroutine at line 
30. 

A different sort of game can be played if you 
try to break through the wall behind you 
rather than defend it. The player who main- 
tains control of the ball longer will ultimately 
break through his wall more quickly. 



Program 4: Apple Version 



10 SOSUB 2000: GOTO 50 

12 IF SCRNt X,Y + DY) = 1 THEN DX = - 

DX:DY = - DY: RETURN 

13 IF SCRN( X + DX,Y) = 15 THEN DX = 

- DX: RETURN 

14 DY = - DY: RETURN 

18 IF DX = - 2 THEN DX = - 1 

19 IF DX = 2 THEN DX = 1 

22 IF Y + DY = Rl THEN 26 

23 X0 = INT ( POL (0) / M6) + 2: IF X0 

< > L0 THEN DX = 2 * DX 

25 RETURN 

26 XI = INT ( PDL (1) / M6) + 2: IF XI 

< > LI THEN DX = DX » 2 
28 RETURN 

30 D = INT ( RND (1) * 13) +2: IF D = 

DL OR D = 13 THEN 30 
40 RETURN 
50 M6 = 7.73:X0 = 2:X1 = 34:R0 = 7sRl = 32 



54 COMP«ITfl MOV1983 



fBO^A 




H 






f: 



^mr\ 



■ hm m mw. ■ 



SPRITEM ASTER"* is not jijr*t iiiuwhcr s-prite odicor for tht CciniirnKJurv 64 *" 

com[iuit.T. 

It's the finest -utiJirv iivyjlubk- fur niulttcolnr sprite .inimnrimii iimJ jjiirn- 

It will hnvt yau making j'ull color aniniatcJ objtrcti in just jrumitL-s. IViipIt ninninij, 
•L.^i. n or tanks roliitu* m- a sn.ip with Sprttemastt-r. 

-toon malcLT fnr children. 

■-' atically ;ip[vnd your sprttc^ to other prt>«T:irni. 
It's L-isy tci use :ind iirKk'rsii*nd and cumt-s with ;i full 2 1 ]iji:c iiistnn riuii m.Kiujil 
:mJ samples ot'tiniriritt-d sprites tu ^l-t you -itiirrfd. ^Suiiui'sti'd ri"*;ijl prife... .535.4^) 







Push yiiuf ConimdJiiri: 64' rothi- hrnic!! 

NEUTRAL ZONE''^ nikt-^ yini to the outer tdm;s of the tpilaxv. w ALPHA IV, ri 
loJiK mnuL- t':irlv wflrnmii •■Mri«?n whose missian is fo ileiect alien intrudctJi from 
tither ifjlaxiv-^. Voii :itc :issi^ni,*>.l Ki one of iht; (trimt-rer fiunncry pods^ 
THIS IS NO-MAN'S LAND TllE NEUTRAL ZONE. , 

NEUTRAL ZC^NE'"' is thf uitimate in high reSoUitHjn, fast action, arcade quality 
yanK-s, Jt IS writti-n in 100^' nriaclnne lantjuage and feaciint-s smtKith scrr>IIinij of the 
^60 dt-yrce jjant>r:ini;i. AN :ji;tiiin is tn 3-0, high rc*. fulf color KTiiphics with « 
fantJistu sjHJtid i-fffuts. Thf re;ihsrn is uiibclit'vahle. (SuiiUcsted tiitail |^ 

pricc....5H,^>5j J _WI 



«*% 



SPRITEMASTER'" AND NEUTRAi. ZONE'" AM- AVAILAlir.H AT Y( n.'R UK: 



:)MMODORE nEALER ON EITHER IllSK OR TAPE. 



ACCESS SOFTWARE INC 

925 EAST WW S< )LTH. SALT LAKE CITTl', I TAH 84105, THLEI'IKWE CiCl j 632-1 114 



110 

112 



IF X 



120 
130 



+2: IF X 



+ 3 AT Rl 
+ 3 AT Rl 



PEEK ( 



16336 



CALL 770 i 

HTAB 10: 
ON ON 



; PRINT : PRINT 
TO 35 STEP 34: 



GOTO 1000 

REM PADDLE SUBROUTINE 
115 X0 = INT < PDL (0) / M6) 

= L0 THEN RETURN 
CDLOR= 0: HLIN L0,L0 + 3 AT R0 
COLaR= 1: HLIN X0,X0 + 3 AT R0 

140 L0 = X0: RETURN 

145 REM PADDLE 1 SUBROUTINE 

150 XI = INT < PDL (1) / M6) 

1 = LI THEN RETURN 
155 COLOR= 0: HLIN LI, LI 
160 COLOR= 1: HLIN XI, XI 
170 LI = XI: RETURN 
250 FOR I = 1 TO 5:A = 

)j NEXT I: RETURN 

RETURN 

POKE 768,1: POKE 767,10 

RETURN 

TEXT : HOME : VTAB 11: 
FLASH : PRINT "D N E 
! " : NORMAL 

VTAB 17: PRINT SPC ( 13); "LEVEL 1 

OR 2 ■';: INPUT LV: IF LV > 2 OR L 
V < 1 THEN 1010 

HOME 1 GR : PRINT 
: PRINT : FOR Z = 1 

FDR Y = Z TO Z + 3 

SOSUB 30 

COLOR= D:DL = D 

HLIN 2,37 AT Yi NEXT Y; NEXT Z 

FOR Z = a TO 28 STEP 10: FOR Y = 
19 TO 21: GOSUB 30: COLaR= D:DL = 
D 

HLIN Z,Z + 4 AT Y: NEXT Y: NEXT Z 

1 COLOR= 15 
FOR I ^ TO 38 STEP 38; VLIN 1,3 

8 AT I: VLIN 1,38 AT I + 1: NEXT I 
: IF LV = 1 THEN 1056 

FOR I = 7 TO 32 STEP 25: VLIN 17, 
23 AT I: VLIN 17,23 AT I + 1: NEXT 
I 

FOR X = 13 TO 26 STEP 13; FDR Y = 
11 TO 23 STEP 12; VLIN Y,Y + 5 AT 
X; VLIN Y,Y + 5 AT X + 1 : NEXT Y: 
NEXT X: GOTO 1059 

FOR I = 5 TO 35 STEP 30; VLIN 17, 
23 AT I: NEXT 1 

FOR X = 14 TO 26 STEP 12: FOR Y = 
11 TO 24 STEP 13: VLIN Y,Y + 5 AT 
X: NEXT Y: NEXT X 

COLDR= 1: GOSUB 130: GOSUB 160 

PRINT SPC< B>; "PRESS THE FIRE BU 
TTON ON": PRINT SPC < 4) ; "PADDLE 

OR 1 TO START THE GAME" 
1070 P0 = PEEK ( - 16287) :P1 = PEEK ( 

- 16286): IF P0 > 127 OR PI > 127 

THEN 1090 

GOSUB 115: GOSUB 150: GOTO 1070 

PRINT : PRINT s PRINT ; PRINT 

CLEAR TEXT WINDOW 

REM GAME ROUTINE 
X = INT < RND (1) « 9) + 17:Y 
3:DX = 1:DY = 1 

IF RND (1) < . 

IF RND (1) < . 

= 17 

GOTO UB0 

COLOR= 0: PLOT 

2 AND I SCRN( X 
> 15 AND SCRN( 

) < > 1) THEN 
DY 



260 
280 

1000 
1010 
1020 



1030 
1035 
1040 
1043 



1045 



1048 



1049 



1050 



1056 



1057 



1059 
1060 



1080 
1090 

1100 
1110 

1120 
1130 

1135 
1140 



REM 



= 2 



5 
5 


THEN 
THEN 


DX = 
DY = 


- 1 

- 1;Y 


X,Y: 

+ DX 

X + 

PLOT 


IF ABS 
/ 2,Y + 
DX / 2,Y 
X + DX / 


<DX) = 
DY) < 
+ DY 
2,Y + 



1150 X = X + DX:Y = Y + DY: CDLOR= 13: PLOT 

X.Y: IF Y > 4 AND Y < 35 THEN FL = 


1160 IF (L < 15 AND L > 1 AND OLDL < 1 

5 AND OLDL > 1) OR (L < IS AND L > 

1 AND FL = 1) THEN GOSUB 250: GOTO 

1 180 
1170 IF L < IS AND L > 1 THEN GOSUB 2 

50; DY = - DY: IF Y < 5 OR Y > 34 THEN 

FL = 1 
1180 GOSUB 115: GOSUB 150: IF Y = OR 

Y = 39 THEN 1250 
1190 OLDL = L 

1200 L = SCRN( X + DX,Y + DY) 
1210 IF L = THEN 1140 
1220 IF L = 15 THEN GOSUB 280: BDSUB 

12: GOTO 1200 
1230 IF L = 1 AND LV = 1 THEN GOSUB 2 

80:DY = - DY 
1235 IF L = 1 AND LV = 2 THEN GOSUB 2 

80: GOSUB 18: DY = - DY; GOTO 1200 

1240 GOTO 1140 

1250 REM WINNER 

1270 IF Y = 39 THEN PRINT SPC ( 5);"! 

1 f VICTORY GOES TO FLAYER 1111" 
1280 IF Y = THEN PRINT SPC < 5);"!! 

I VICTORY GOES TO PLAYER 2! ! 1" 
1290 FOR I = 1 TO 1000: NEXT I 
1300 PRINT : PRINT SPC < 5) ; "PRESS A P 

ADDLE BUTTON TO PLAY": PRINT SPC i 

5) ; "AGAIN, Q TO QUIT"; 
1310 POKE - 16368, 0:P0 = PEEK ( - 16 

287) :P1 = PEEK ( - 16286): IF P0 > 

127 OR PI > 127 THEN 1000 

1320 IF PEEK C - 16384) = ASC <"Q") + 

128 THEN 1400 
1330 GOTO 1310 

1400 POKE - 16368,0: TEXT : HOME : END 

2000 REM SOUND ROUTINE 

2010 FOR I = 770 TO 795: READ M: POKE 
I,M: NEXT 

2020 DATA 172,01,03,174,01,03,169,04, 
32, 168,252, 173,48, 192,232,208,253, 
1 36 , 208 , 239, 206 , , 03 , 208 , 23 1 , 96 

2030 RETURN © 



COMPUTE! 

The Resource 



VrC 20 • COMMODOR 64 • ATARI 



THERE IS STRENGTH IN NUMBERS 

JOIN 

THE SOFTWARE CO-OP 

NOW? For the cost of a single game cartridge you 
can |Oin THE SOFTWARE CO-OP. Use the advantage 
of bulk-purchasing and pay only SI over wfiole- 
boIb for games. utilHies and educational software. 
Rook-bottom prices on all equipment and supplies. 
Savings up to 40%. Guaranteed. Specializing in 
VIC 20. Commodor 64. Atan. Apple and Sinclair. 

Wnie loday for free details about our exciting new cataiog 
and other sensational Co-op t?enetit5 including special swap 
systern and tree technical assistance 

THE SOFTWARE CO-OP 

PO BOX 275 ELIZABETH, NJ 07207 



iuv±v • t^suoaoi^i/MOo • ozoia 



54 COMPUTE! Mayl'SS 



Questions Beginners Asi( 



Tom R, Halfhill, Features Editor 



Are you thinking about buying a computer for the first 
time, hut don't knoiv anything about computers? Or 
maybe you just purchased a computer and are still a bit 
baffled. Each month in this column, COMPUTE! will 
tackle some of the most common questions tliai we are 
asked by beginners. 



QI own an Atari 400 computer and 410 
recorder, and I'm very interested in pro- 
gramming. Lately I've been experimenting with 
the different graphics modes. I can draw pictures 
on the screen, but I don't understand how to move 
them around with the game controllers (joysticks, 
paddles, and keyboard). What command makes 
the joystick move the picture? If you could just 
explain how to use the game controllers, I would 
be very grateful. 

A Although this particular question comes 
from a 14-year-old reader with an Atari, it is a 
common one asked by new users of all brands of 
computers. How can I animate objects on the 
screen with the game controllers? Unfortunately, 
there is no simple answer. 

First, it's important to understand that the 
game controllers by themselves do nothing to animate 
objects on the screen. Animation is up to your pro- 
gram. All that a game controller does is change a 
number in a memory location somewhere inside 
the computer. That number indicates the status 
of the controller, such as which way a joystick is 
deflected, or how far a paddle knob is turned, or 
which key is pressed on a keyboard. 

Except for returning this number, a game 
controller does absolutely nothing else in the way 
of animation. A program reads this number, uses 
it to figure out what action the user desires, and 
then responds accordingly, thereby achieving 
animation. This is not an easy task for beginning 
programmers. Many beginners are dismayed 
when they discover that animation is far more 
difficult than just plugging in a joystick and typing 
in a command or two that will move their pictures 
around. 

That's why most home computer manuals 
and instruction books barely cover the subject. 
You must be on solid ground with the fundamen- 
tals of programming before attempting something 

58 COMPUrei May 1983 



like animahon. 

To learn these more advanced techniques, 
you'll have to read many computer magazines 
and books. COMPUTE! has published numerous 
articles on animation for the Atari and other popu- 
lar computers, and will continue to do so. The 
Beginner's Page column in the February 1983 issue, 
"Writing An Arcade Game," is a good introduc- 
tory article. It includes example programs for 
several computers to demonstrate one method of 
animation: repeatedly drawing and erasing an 
object in screen memory. Other good sources are 
COMPUTEl's First Book Of Atari Graphics and 
COMPUTEl's First Book Of VIC. 

Ql'm shopping around for my first home 
computer, and I see many ads in magazines 
and newspapers for low-priced computers. But 
when I visit the store, it seems like the sales 
people always try to sell me on numerous acces- 
sories and other things that end up costing more 
than the computer. How many accessories do I 
really need to get' started? Isn't the computer itself 
enough? 

A Chances are you will end up buying more 
than just the computer to get started. But 
how many accessories you need really depends 
on what you plan to use the computer for- some- 
thing that should be foremost in your mind as 
you shop. 

A computer by itself is more useful than a 
stereo receiver without speakers, a turntable, a 
tape deck, and records. But there is an analogy 
here. To make a computer really useful you need 
software, programs to make it run. Among the 
most popular uses for home computers are enter- 
tainment and education. This means you'll need 
game programs, educational programs, and so 
on. You can write programs yourself, copy them 
from COMPUTE!, or buy commercial software. But 
whatever you do, you'll at least need a tape 
player. 

You'll need some way to load the programs 
into the computer. Some programs are built into 
plug-in cartridges which require no additional 
equipment. But most programs come on cassette 
tapes or disks. Loading a disk requires a disk drive, 
which costs $350 to $600. That's why most people 
start out with cassettes, which are far less expen- 



NOT EVERYONE CAN TEACH THEIR ATARI™ NEWTRICKS. 




WE MAKE USING AND LEARNING ABOUT COMPUTERS FUN! 



PROGRAMMING GUIDE FOR BEGINNERS OR EXPERTS - MASTER 

MEMORY MAP.™ A32 page book with hundreds of hints on how to use 
your computer. Over 500 memory locations! S6.95. 

LEARN SOUND AND GRAPHICS with our exciting lessons called 
TRICKY TUTO RIALS.'* Each comes with a tape or disk full of examples, 
and a 1 2 to 64 page manual written in an easy to understand manner, 
#1 DISPLAY LISTS — Put several graphics modes on your screen at 
once. §2 SCROLLING — Move text or graphics smoothly up. down, 
sideways, or diagonally. #3 PAGE FLIPPING — Change TV screens as 
quickly as flipping pages in a book. #4 BASICS OF ANIMATION — A 
beginner's lesson in animation using PLOT, Pf^INT, and a surprise 
game. #5 PUYER MISSILE GRAPHICS - Learn the basics of writing 
your own arcade games. #6 SOUND & MUSIC — Simple methods to 
play complete songs, with graphics. Includes PLAYER PIANO free! #7 
DISK UTILITIES — 7 programs to help you use your disk drive. 32K. #8 
CHARACTER GRAPHICS — The best editor available with examples 
using special characters YOU CREATE and ANIMATE. #9 GTIA, 
GRAPHICS 9 to 11 — New tricks you can do with these 1 6 color modes. 
#10 SOUND EFFECTS - Many examples, from rainfall to laser blasts. 



4565 Cherryvale Ave., Soquel, Ca. 95073 



with ample explanation. #11 MEMORY MAP TUTORIAL - 30 colorful 
examples of tricks your computer can do. 

TUTORIALS 1 to 4 are $19.95 each. Numbers 5 to 11 are $29.95 each. 

16K Tape or 24K disk. SPECIAL: Tutorials 1 through 6 for $119.95. 

SAVE $20.00! 

WRITE FOR A CATALOG OR CALL FOR ORDERING INFORMATION 
VISA/MC/CQD: (800) 692-9520 OR (408) 476-4901 

OUR GUARANTEE: Your money back if unsatisfied! 



^AVAILABLE 
FROM DEALERS \,r\ 
WORLDWIDE. '''^ 




Educational 
Software inc. 



,-<ii 



wabasK 



for 
as 

low 
as 



diskettes 

$1.39 each! 

Now... Get High Quality at a Low Price 

Wabash means quality products that you can depend on. 
For over 1 6 years, Wabash has been making high quality 
computer products. Wabash diskettes are made to provide 
error-free performance on your computer system. Every 
Wabash diskette is individually tested and is 1 00% certified 
to insure premium performance. 

Why Wabash is Special 

The quality of Wabash diskettes is stressed throughout 
the entire manufacturing process. Aftercoating, all Wabash 
diskettes go through a unique burnishing process that 
gives each diskette a mirror-smooth appearance. Wabash 
then carefully applies a lubricant that is specially form- 
ulated to increase diskette life. This saves you money, 
since your discs may last longer. It also assists your disk 
drives in maintaining constant speed which can reduce 
read and write errors. 

Special Seal. ..Helps Prevent Contamination 

To keep out foreign particles, a unique heat seal bonds the 
jacket and liner together. A special thermal seal which 
avoids contamination from adhesives, is then used to fold 
and seal the jacket. This results in outstanding perfor- 
mance and true reliability. Wabash then packages each 
diskette, (except bulk pack) in a super strong and tear 
resistant Tyvek® evelope. The final Wabash product is 
then shrink-wrapped to insure cleanliness and reduce 
contamination during shipment. 

Each Diskette Is 100% Critically Tested 

Since each step in the Wabash diskette manufacturing 
process is subject to strict quality control procedures, you 
can be sure Wabash diskettes will perform for you. And 
every Wabash diskette meets the ultra-high standards of 
ANSI, ECMA, IBM and ISO in addition to the many critical 
quality control tests performed by Wabash. Wabash does 
all of this testing to provide you with consistently high 
quality diskettes. Reliability and data integrity - that's 
what Wabash quality is all about. 

Flexible Disc Quantity Discounts Available 

Wabash diskettes are packed 1 discs to a carton and 1 
cartons to a case. The economy bulk pack is packaged 
100 discs to a case without envelopes or labels. Please 
order only in increments of 100 units for quantity 100 
pricing. With the exception of bulk pack, we are also 
willing to accommodate your smaller orders. Quantities 
less than 1 00 units are available in increments of 1 units 
at a 10% surcharge. Quantity discounts are also avail- 
able. Order 500 or more discs at the same time and deduct 
1 %; 1 ,000 or more saves you 2%; 2,000 or more saves you 
3%; 5,000 or more saves you 4%; 10,000 or more saves 
you 5%; 25,000 or more saves you 6%; 50,000 or more 
saves you 7% and 1 00,000 or more discs earns you an 8% 
discount off our super low quantity 1 00 price. Almost all 
Wabash diskettes are immediately available from CE. Our 
warehouse facilities are equipped to help us get you the 
quality product you need, when you need it. If you need 
further assistance to find the flexible disc that's right for 
you, call the Wabash diskette compatibility hotline. Dial 
toll-free 800-323-9868 and ask for your compatibility 
representative. I n Illinois or outside the United States dial 
31 2-593-6363 between 9 Afvl to 4 PM Central Time. 



SAVE OH WABASH DISKETTES 

Product Description 

SSSD IBM Compatible 028 B/S. 26 Sectors) 
Same as above, but bulk pack w/o envelope 
SSSD Shugart Compatible, 32 Hard Sector 
SSDD IBM Compatible (1 28 B/S, 26 Sectors) 
DSDD Soft Sector (Uriformatted) 
DSDD Soft Sector (256 B/S. 26 Sectors) 
DSDD Soft Sector |512 B/S, 15 Sectors) 
DSDD Soft Sector 11024 B/S, 8 Sectors) 
." SSSD Soft Sector w/Hub Ring 
Same as above, but bulk pack w/o envelope 
SSSD 10 Hard Sector w/Hub Ring 
SSSD 16 Hard Sector w/Hub Ring 
SSDD Lanier No-problem compatible 
SSDD Soft Sector w/Hub Ring 
Same as above, but bulk pack w/o envelope 
SSDD Soft Sector Flippy Disk (use botti sides) 
SSDD 10 Hard Sector w/Hub Ring 
SSDD 16 Hard Sector w/Hub Ring 
DSDD Soft Sector w/Hub Ring 
DSDD 10 Hard Sector w/Hub Ring 
DSDD 16 Hard Sector w/Hub Ring 
SSQD Soft Sector w/Hub Ring (96 TPI) 
DSQD Soft Sector w/Hub Ring (96 TPI) 



Pan* 


CE quant, 
too prlcv 
par disc (S) 


Fill 


1.99 


F111B 


1.79 


F31A 


1.99 


F131 


2.49 


F14A 


3.19 


F144 


3.19 


F145 


3.19 


F147 


3,19 


Mil A 


1.59 


M11AB 


1.39 


M41A 


1.59 


M51A 


1.59 


M51F 


2.99 


M13A 


1.89 


M13AB 


1.69 


M18A 


2.79 


M43A 


1.89 


M53A 


1.89 


M14A 


2.79 


M44A 


2.79 


M54A 


2.r9 


M15A 


2.69 


M16A 


379 



8" 

8" 

8" 

B- 

B" 

8" 

8" 

8" 

SV.' 

5'/.' 

5'/.' 

6V.' 

5'/.' 

5'A' 

S'/.' 

5V«' 

5'A 

S'A' 

SVt' 

5V. 

5 'A 

5'A 

5'A 

SSSD = Singre Sided Single Densily: SSDD = Single Sided Double Density: 
DSDD = Double Sided Double Density: SSOD = Single Sided Quad Density: 
DSOD = Double Sided Quad Density: TPI = Tracks per inch 

Buy with Confidence 

To gel the fastest delivery from CE of your Wabasfi computer 
proiducts, send or phone your order directly to our Computer 
Products Division. Be sure to calculate your price using the CE 
prices in ttiis ad. Mictiigan residents please add 4% sales tax or 
supply your tax I.D. number. Written purchase orders are accep- 
ted from approved government agencies and most well rated 
firms at a 30% surcharge for net 30 billing. All sales are subject to 
availability, acceptanceand verification. All sales are final. Prices, 
terms and specifications are subiect to change witfiout notice. All 
prices are in U.S. dollars. Out of stock items will be placed on 
backorder automatically unless CE is instructed differently. Min- 
imum prepaid order S50.00. Minimum purchase order S200.00. 
International orders are invited with a S20.00 surcharge (or 
special handling in addition to stiipping charges. All shipments 
are F.O.B. Ann Arbor, Ivlichigan. hJo COD'S please. Non-certified 
and foreign checks require bank clearance. 

For shipping charges add $8.00 per case or partial-case of 
1 00 8-incti discs or S6.00 per case or partial-case of 1 00 5'A-inch 
mini-discs for U.P.S. ground shipping and handling in the con- 
tinental United Stales. 

Mail orders to: Communications Electronics, Box 1002, 
Ann Arbor, Michigan 481 06 U.S.A. If you have a Master Card 
or Visa card, you may call and place a credit card order. Order 
toll-free in the U.S. Dial 800-521 -441 4. If you are outside the 
U.S. or in Michigan, dial 313-994-4444. Order your Wabash 
diskettes from Communications Electronics today. 

Copyrigtit ' 1982 Communications Electronics" Ad #1 10582 

MEMBER 




- MtMBtH mmm 



DI*EC1 HUUL 
UtMIIMC *SSDCI*IKM 



Order Toll- Free! wabash 
8CX)-521-4414 sr^'fl®® 

In Michigan 313-994-4444 UlSKetteS 




COMMUNICATIONS 
ELECTRONICS" 

Computer Products Division 

854 Phoenix D Box 1002 D Ann Arbor, Michigan 48 106 U.S.A. 
Call TOLL-FREE (800) 521 -4414 or outtlds U.S.A. (31 3) 994-4444 



sive. A few computers - the Timcx/Sinclair T/S 
1000, for instance - work with an ordinary portable 
cassette recorder, which you may already own. 
Others require a special cassette recorder, which 
can cost $65 to $90. 

Most people end up buying a starter system 
that includes the computer, a tape recorder, a few 
programs on cartridges or cassettes, and often 
some game controllers (joysticks or paddles). It's 
a good idea to hold off on buying additional cquip- 
nient until you're better able to tell what vou'll 
need. Later, you can add a printer, disk drive, 
additional memory, telephone modem, or other 
accessories as vou want them. © 




GRAPHICS HARDCOPY 



NOW FOR NEC & OKIDATA 



Dumps anything on ihe screen of an ATARI 
400/800 to s prin!«. All gfaphics 6 !exl 
modes Players/ missiles /scaling /g^ey 
scale/aTlA/morel Works wiTh EPSON, 
NEC. Okidala, Centronics 739. IDS 3nO 
Trendcom Specify 800 or 400 and printer 
when ordering 



IIVCLUDES CABLE 6 
B60 MODULE NOT 






(209) 667-2888 

ROTBONICS, inc. 



yiS 



SOFTWARE 
REQUIRED 



J 



.C.O.D, 
25 N. Golden S[ate Bfvd /^HJ-iiJ-LM-wiHiU-tMilJi:!! 

Turlock. Caljtarnta 95380 pat :■. i.ii i^j m pujni •.v.taXH ut-^i 



'ATARI IS 3 registered tratJemaik of ATARI Computer Inc. 



HARDWARE & SOFTWARE 

COmPUTER 
Praducls by FTIaik 



SAVE 20—40% 



Mail the attached coupon to CPM with S1.25 
(check or money order) and receive our listing of 
computer hardware and software. Listed below 
are a few of the many software manufacturers 
currently in stock. 

Software in Stock for ■ Software □ 

■ Apple r Broderbund Quality Software 



Atari 

Vic-20 

IBM 

Radio Shiack 



Thorn, Efvll 
Big Five 
Sirius 
Synapse 



Sierra On Line 
Automated Simulations 
Continental Software 
Avalon Hill 



Over 1200 software titles currently in stock. 



Yes. I am interested in Computer Products By 

Mail. I am enclosing a check or money order for SI .25 
for my complete computer print-out catalog. I under- 
stand that this amount is applied to my first pur- 
chase. 



Name 
Street 
City 



.State^ 



_2ip_ 



ivlail to: CPM P.O. Box 19137 Cfiarlotte, NO 28219 



cpm 



PINBALlf-ATAR 



10 selectable modes of play, including 
Easy, Competition, High Speed, and Cosmic. 

40 user-adjustable parameters: create and 
save your own custom games. 

an instruction card, a hi-score disk label, and 
a 16-page manual explaining ail of the 
variations available. 

all for only $29.95 (for the Apple, $34.95) 



LCXalC 

713 Edgebrook Drive 
Champaign, I L 61820 
(217) 359-8482 
Telex: 206995 



It: 



or for direct orders, specify ATARI 400/800 (32K) cassene or disk. 
APPLE II (48K) disk. Add $1 .50 and indicate UPS or first class mail . 
Illinois residents add 5% sales tax. Visa and MasterCard accepted. 



■Appte" is'tfie rogistefod tra<teniaft< of Apple Cotnputer Inc. 



COMPUTERS AND 
COMPOSITION 



Joan Vesper 



As people in schools, businesses, and homes receive 
nnvc n)id more papers and letters icritten by computer 
rather than by typewriter or pen, they may feel thai the 
cursor has passed them by and that loriting as they 
know if has irretrievably changed . Students in particular 
zvill )iotice the perfectly-formatted papers that a few of 
their classmates are turning in. Here are the pros and 
cons ofu'ord processi)ig as reflected in an itifonnal sur- 
vc\/ at three colleges. 



Last year, on an extended visit to Boston (Silicon 
Valley East), I counted myself among computer 
greenhorns, and I wondered what it takes to write 
"on-line," and if it's worth the effort. To find out 
the answers, I visited three Boston-area colleges 
(Babson, Harvard, and Massachusetts Institute of 
Technology) and talked with students and staff 
who regularly compose at terminals. In addition 
to interviewing computer-users at the colleges, I 
interviewed David Winder, assistant overseas 
news editor of The Christian Science Monitor, who 
has two years' full-time experience writing and 
editing on-line. Most of the interviews took place 
at campus terminal centers -large rooms equipped 
with several keyboards and matching screens 
where students drop in to use a terminal much as 
they might rent a typewriter. One Babson student, 
Linda Bailey, was interviewed in her office at 
Intelligent Devices, hic, a computer-related 
company she and her husband started in 1979. 

As these people talked about using computers 
to write, it became clear that: 

1. Most do not use a computer during the 

prewriting stage, 

2. Some do, but some do not, use it during 
the writing stage, depending on individual 
composing habits and on cost and availability 
of computers. 

3. Almost all prefer to use a computer for 
revising and making final drafts. 

Their reflections on using the computer at 
each of these stages help clarify what computers 
can and cannot do for writers. 

62 COMPUTE! Mov 1983 



Prewriting 

None of the computer-users interviewed employs 
a terminal for jotting down notes days before he 
or she writes the first draft of a paper. (A special 
case is Jayne West, consultant and programmer 
analyst at MIT, who also writes stream-of- 
consciousness poetry on the computer.) However, 
some use the computer for data analysis at this 
early stage. For example, David Meltzer, an Eng- 
lish major at Harvard, used the computer before 
writing a term paper on Byron's Don }ua\i by 
counting the ratio of Byron's use of the personal 
pronoun "1" to the poet's use of the proper noun 
"Don Juan." Because of the preponderance of the 
word "I," Meltzer concluded that the poem is 
highly autobiographical. 

Writing 

"It's just as hard to sit down to compose in front 
of a blank screen as a blank sheet of paper," Melt- 
zer observes. For this and other reasons, only the 
most enthusiastic computer users in this survey, 
a group of undergraduates on MIT's Student In- 
formation Processing Board (SIPB) who guide 
other MIT students in the use of MIT's terminals, 
use computers to write out first drafts of papers. 
Steeped in technology and having free access to 
state-of-the-art equipment, SIPB "hackers" (com- 
puter enthusiasts) compose at a terminal by 
preference. 

But most of those interviewed do not turn to 
the computer to write a draft until after they have 
gone through the "diagramming and scratching- 
out phase." Others postpone their approach to 
the computer even longer. Whether or not writers 
compose on paper or at the terminal at this stage 
in the writing process involves two considerations: 
individual writing habits and computer avail- 
ability. The habits include what hardware these 
people have used in the past for composing, how 
fast they think while writing, and how much dis- 
order they can tolerate. Regarding hardware, 
users say either they have always composed at a 
keyboard - typewriter or terminal - or they have 
always composed with pencil or pen. 



The Home Accountant. 
. The "^1 best-seller. 






f 5-^^ r •4:^-^">^''^ 



»— *■ 






Any home finance packase will balance your 
checkbook. But to become the #1 best-seller 
you Ve got to be something special. 

The Home Accountant™ is, 

It's the only one that prints a net worth 
statement and a [Dersonal finance statement. 
So you know exactly where you stand 
financially ever/ day of the year It will even 
print your checks, automatically. 

Not on ly thatjhe Home Accou ntant" lets you 
label every transaction. Just imagine sitting 
down to do your taxes and having every 
penny you've spent and earned neatly listed 
by category —and available at the touch of a 
button. It's an incredible time-saver. 

You can also create bar, line and trend 
analysis graphs for ever/ category— in color 
It's great for realistic budgeting. 

Sound amazing? Wait, there's more. 

Let's say you write a check to pay your 
Visa.The Home Accountant™ automatically 
debits your checking account and credits 
your Visa account. 

And it does this with every one of the two 
hundred'* budget categories: credit cards, 
checking accounts, money markets, cash, rent 
checks, insurance payments— you customize 
your own financial package. 

Check out The Home Accountant" soon. 
You'll find it does a lot more than simply 
manage your money. 

It manages your money simply. 

■^The Home Accountant™ is available for the 
Apple ll/IBM Personal Computer/Atari 400/ 
800 Computers/Osborne/TRS 80 Model III/ 
Commodore VlC64.The actual budget 
capacities will vary with each computer. 



Continental 

Software 

A Division of Arrays, inc. 





"-HAre^tiiffci^iiaocifMfHtirCiMTiiTmdoxtutinciiMKhinci Inc 



p It sells the most, 
> because it does the most! 

Continental Software Co., 11 223 South Hindry Avenue, Los Angeles, California 90045 Telephone (213) 417-3003 • (213)417-8031 



In the first group is Bill York, an MIT under- 
graduate, who says he composed on a typewriter 
until he was a freshman at MIT, but has since 
written everything on the computer. "I never use 
a typewriter unless nothing else is available, like 
when 1 go home for vacations," he says. Jeff 
Schiller, another MIT undergraduate, concurs: "I 
was always a composer at the typewriter, so the 
transition to computer was easy." As members of 
the SIPB, both students meet many computer- 
users who compose with pencil or pen. "They 
did in the past, and they still do/' they observe. 

In this category of yellow-pad composers is 
Mary Phelan, a text processor at Harvard, who 
uses the computer only for final drafts. "I hand- 
write my drafts first," she says. "It's the way I've 
always done it." She explains that for her, "There's 
something about being able to touch the paper 
that makes me feel more in touch with what I'm 
writing. And I like to carry around what I've writ- 
ten. You can't very well put a terminal in your 
pocket and look at it on the subway." Another 
writer, Fred Pickel, who characterizes himself as 
a "cut-and-paste artist," puts off working at a 
terminal until later in the composing process 
because he likes to have all his work spread out 
around him where he can see it. "The computer 
limits your vision to one page at a time," he 
points out. 

Another personal reason for using a computer 
during the writing stage is offered by Winder, 
who finds that the computer, unlike a typewriter 
or a pen, can keep up with his thoughts. 

Tolerance for disorder is a final factor of per- 
sonal composing style that enters into decisions 
about using the computer for early drafts. Some 
of those interviewed are discouraged by piles of 
papers with mistakes, cross-outs, and arrows. 
One touch of a computer's "Delete" key and such 
impediments vanish. 

Bailey, the Babson student-entrepreneur, 
says, "I used to get very confused by all the ideas 
going through my mind. I'd write them all down 
in a series of drafts, and then I got confused seeing 
too many ideas written down. But with a com- 
puter, I keep typing at the keyboard, not making 
corrections, thinking of the next sentence and not 
worrying if I've said it correctly, knowing I can go 
back and remove any sentence without making a 
sloppy mess of the paper." Meltzer is also affected 
by the appearance of what he writes: "It used to 
be that when I wrote a sentence three times I had 
a mess. The computer eliminates such eyesores." 

There is also the cost and availability factor. 
This is easy for the non-user to overlook, but it is 
very important in practice. Fortunate in this regard 
are computer owners, such as Bailey, who has 
four terminals in her company office. Students at 
colleges which supply free computer accounts for 

M COMPUTIF May 1983 



both computer-related courses and independent 
projects, such as writing assignments, are also 
lucky. Students who have to pay out-of-pocket 
for computer time are sometimes cut off from a 
desirable tool. "My budget isn't big enough to 
use the terminal for anything but final drafts," 
says Pickel, an MIT doctoral student. As more 
and more people become sophisticated in the use 



Computers free writers 

from retyping correct 

sections of the paper 

and allow them to 

concentrate on rewriting 

incorrect ones. 



of computers and want to use them for indepen- 
dent work, administrators of college computing 
services foresee more fees and/or more restrictions 
on use of college equipment. 

Besides cost, location of terminals is another 
consideration. As mentioned, some people write 
drafts in longhand because they do not have com- 
puters at home. Others avoid computers when 
writing drafts because they can't concentrate in a 
terminal center. These rooms may be filled with 
50 machines and more than 30 people, especially 
during rush times - such as the day before a big 
paper is due, the late afternoon hours when 
evening students arrive on campus anci day stu- 
dents haven't yet gone home, and the end of the 
term. At Harvard's Science Center, the terminal 
room "gets very noisy and it's hard to think," 
math majors Bruce Molay and Jeff Tecosky point 
out. Hilary Hodgson, working on her M. A. in 
city and regional planning, adds that Harvard 
students sometimes have to sign up 24-hours 
ahead for a terminal. Of course, even alone in a 
quiet room with a terminal all to oneself, a writer 
may face interruptions in the form of messages 
from other users flashing across the screen. This 
is the situation at SIPB, whose members belong to 
associations of users who keep each other posted 
via the display screen on subjects of mutual 
interest. 

In every case, users agree that the day a per- 
son plans to write a paper is not the day he should 
learn how to operate the computer. Most problems 
occur in simply getting the paper into the machine. 
After that, the computer is generally an advantage 



King of the 
mountain! 



Workhorse solutions 
for tough questions. 



When Southern Solutions acquired the exclusive marketing 
rights for the CMS Accounting System, the first (and the best) 
accounting system for the Commodore computer; we offered 
dealers who were dissatisfied with their current accounting 
software the opportunity to swap ... ours for anyone elses. 

WOWI We were covered with the others ... IVtAS, BPI, 
EBS, etc ... all trading for CtvlS. We provide the only 
complete coverage of real software for Commodore 
computers: 

THE PREMIER ... SYSTEM IV. Real 
aaounting. Ivlore like a mini, yet priced for the 
Commodore. SuperMath'" gives precision to 
$1 billion. No one else comes close. 
General ledger accounts receivable, 
accounts payable, payroll, inventory, 
mailing list Plus important vertical 
products: oil accounting, pharmacy 
management encumbrance 
accounting, church records and 
more. 

THE STANDARD... 
SYSTEM HI. Similar to 
System IV but Icwer priced. 
CVU A/R. A/R P/R. mailing list 

Commodore 64*. 
Complete line of bookkeeping 
record keeping, personal and 
household management 
Usually sells for under $100. 
Uses one or two drives, just about 
any printer 

Peripherals, fvlonitors, monitor 
cables, blank cassettes. 

All software has RleGuard'". Never 
lose data files, EVEN IF YOU tOSE 
EtECTRICITY! Compatible with almost any 
computer disk drive and printer 
combination. User-definable reports. Fast 
file aaess. 

Sold only through professional 
computer dealers. 

To become a Southern Solutions 
dealer, or for the name of your nearest 
retailer call or write our General 
fvlanager Bill Swingler 

Dealer Hotline: 1-800-SZ7-4S48 



•Commodore &S is a registered 
trademark of Commodore 




fs 



.XWfe, 






S(0iSherfi 
SoTumms 

PO. Box P, M^Kinney, Texas j^oSg - (214) ^42-02/8 



- unless the main computer is "down" (its memory 
is filled to capacity or it is being repaired), or you 
can't get a printer. 

Revising 

After the writer has a first draft, most agree that a 
computer is preferable (with a few minor draw- 
backs) to typewriter or pen for the rest of the 
composing process. 

First, drawbacks. On a short paper, the effort 
of getting into the machine - logging on and 
creating a file with a list of specifications for for- 
matting - isn't worth it, even with the revision 
capabilities of the computer, according to two 
Babson users. Also, the time lag between 
keyboarding a revision and seeing it on screen - 
sometimes as long as 30 seconds - is frustrating, 
says Schiller. The lag, he explains, is due to time 
sharing, or, as he jokes, "ITS" - incompatible 
time sharing - where as many as 73 users may be 
plugged into the same computer. "There's a lot of 
competition for the attention of the machine," 
Pickel explains. 

Another problem, when editing bv computer 
is the time it takes for the cursor, or pointer, to 
move to the characters on the screen that the user 
wants to change. "My eye and a red pencil can 
move faster," says Winder. He adds that seeing 
only a screen's length of a story (120-150 words) 
instead of the entire work is a handicap when he 
wants to move around chunks of copy, and par- 
ticularly when he is searching for a lead that may 
be buried deep in the stoiy. Another drawback 
occurs when a professor specifies the tvpe of paper 
he wants students to use in an assignment, such 
as bond with a certain rag content. To remove 
from the computer standard paper with tractor 
edges and feed in special paper is expensive and 
time consuming. 

(Editor's Note: Mercifulh/, tlicse dclni/s and 
frusti'iilkvis do not apply to zvord proccfisiii^ on personal 
coiiiptiters.j 

In spite of these drawbacks, most users agree 
that computers make their greatest contribution 
during the revising stage: they free the writer 
from retyping correct sections of a paper and allow 
him or her to concentrate on rewriting incorrect 
ones. "After you learn how to use the computer - 
and there is a learning curve - it takes about one- 
third the time to edit as it would by typewriter, 
because with a computer, you retype only the 
things you want to change," Schiller observes. 
But he cautions that the computer is a "two-edged 
sword" in this respect. While it allows a better 
final product, it also creates demand for a better 
final product. That is, as professors catch on to 
the computer's abilities, "they may make you 
revise small sections of a paper that earlier they 
would have let pass." 

66 COMPILE! May 1983 



An added benefit of the computer during the 
revising stage is noted by a group oi \ larvard users 
who find that a computer is great for group work. 
Each member can feed his or her revisions into 
the machine, and then the group can request 
multiple copies. 

Furthermore, the computer allows relatively 
fine strokes in the revising process. For example, 
some programs have spelling glossaries which 
store correct spellings of a few thousand words, 
including specialized words the user might add. 
The computer displays spellings in a composition 
that deviate slightly from the words on this list 
and displays correctly spelled alternatives that 
the user may have intended. The user selects the 
correct spelling, and the computer automatically 
inserts this spelling throughout. 

Evasion Of Displeasure 

Another fine stroke is the computer's ability to 
Ti'ord count. Mcltzer says he reviews his essays in 
this way as a check on style. For example, in an 
essay on Emily Dickinson, whose poetry he does 
not like, he founci he often used phrases beginning 
with "of" instead of possessive nouns. "It was an 
evasion of displeasure," he concluded, since the 
"of" construction was less direct. 

While the computer can analyze text word 
for word, as it does when it checks spelling or 
word frequency, it cannot vet work at the level of 
syntax. "So if your problem is Baroque sentence 
structure, you're out of luck," says Love. But he's 
cjuick to add that a group of MIT professors is 
working on the application of computers to the 
analysis of grammar. 

Capping the triple ability of the computer in 
the revising stage - it minimizes retyping, it's 
good for group work, and it allows word for word 
analysis - is the bonus that makes computer com- 
positions irresistible for many writers and their 
readers: the final product can be 100% typo- 
graphically accurate, with justified right-hand 
margins, and printed in a variety of type fonts. © 




MEMOREX 

FLEXIBLE DISCS 

WE WILL NOT BE UNDER- 
SOLDn Call Free (800)235-4137 

for prices and intormation. Dealer 
inquiries inuited and C.O.D.'s 
accepted 



PACIFIC 
EXCHANGES 

100 Foothill Blud 
San Luis Obispo. CA 
9,3401. InCal.call 
(800) 392-5935 or 
(805) 543-10.37 



• 




4 I] " 



!qn»red ridsi^ik ol Commodor* • aPPLt .1 j uaOtm^k t,\ ftPPLE Carapuwf Inc. 



eLCOMP PUBLISHING. INC. 

53 Redrock Lane, famoaa CA 91766 / USA 

Phanc (714)62}'a314 

t^ntcnt: C1)«ck, mmwY Hihr. VISA, Msriv Qvrg* 



FOR ATARI 400/800* • VIC-20* - SINCLAIR/TIMEX ' 



OSI . APPLE* PET/CBM 







ATARI BASIC ~ Leaming by Uwng 
An t^celltnt Oooi far Ih» begifw«f - Hiny 
ihofi prf7inK ind lesming «xecl>et. 
Onfcr-Ha. 1&4 S755 

GsTM lor [ha ATaRI CotnputM 
Thit titwk i)«flaj#j advifKwl pfoym- 
mlng techniques Tike plawninttla- 
fft^ia and u»at llM haTE^ii«'f«gui»ii. 
Conuim nvinv rud^-u-fun pra^Anii m 
BASIC iml m UlM GUNFIGMT hn 

Ort^-No. 142 S7.9S 

How (0 pra^am vour ATaKI in fiS02 

Thfl lutqwn of cTiii trenk a to ihkIi you 
how Id ptOV*m your ATAPI computer 
in iQ^ mtchinB language. Coniaini • 
laigt colltTiiin of pFogrami. 
Ordw-No. 1&9 Sa.95 

Pti>gnm DHCriiilioni tATAHl) 
Of6tiHo- 173 SB.00 

FORTH on iht ATARI-Lwrning by 
LMflft OrdK-No. I7d tT.» 




Beaki • Satnn*!* iat VIC 20 
3K RAM Etp.) 

Wardp(ACM«>«.aKRAMt!^4S70 
hbilini Ltii. 1&K RAM ^i 4263 
Tri^kifQ. V'CtltNwh) 2 175 
TJCTACVrC -4880' 

GAMCPACK l4,3pA>ftji ? 48S1 
Dull Joynld: In^tmet. "^ISBS 
INPuTAJUTf UT Progr #4ase 
IMIiiMMKr-blH ^4S96 

TtMnn. Squnh^TMk ^4B81 
RupfilforVIC £4894 



« 19-95 
£l4a& 
S S« 
E 3.9S 
ei4.9S 
£ 9.95 

4 EF.B5 
S19-W 

5 a.9S 
K 3J9S 



Unnrarul EipvfuiMcrtaf Boif^ 1i>r Um 
VIC-2CI ~ 4S«/e nan*Y wiiti thit ^imi 
board! TTiLi board' r-lujl I'gfn Jnic the 
txpanimn ilol qT lh» VlCm. Th« U^r^j 
conitin^ ) lji|)t prdtatypirtgwM foi youi 
CMTi circuit iJetlgn and enSdrl^ign. T^c 
fontmxtan Irtlcte dnwt you l\o« to 
buU ¥««*■ o*n 3i( RAM tspandw and 
HOM*Mfd. 
Qrd«r-No.4&M t1I.K 

Soflwara for SINCLAIR ZX4I tnd 

TIMEX 1D[» 

Machin 



V Languaffl Hnvlior 



MiCri>cuiTipuiM Kardwir* 
Handbook [&IS p«sMI 
OHOipliont, pino'Jb and 
tpedficdlivriii of the mod 
popiiljr mioopj' ocenart 
and Hjpoon C^'Cf 
A WUST lor !I5« haritwarw 

<V4«f«a 7^ $I4.9S 



Caii uid Feeding a( Uw Cwfimdifart PfT 
ttgtit enaotcrt ctptoriny P£~I hatiMn. 
frKtu^ai i«iuir md bittrUctng inroimalnn 
Pro^Hnming nkAt tnd »ch«matict. 
Ontaf No. ISa £9J95 

Caniji4t> SOMMd Oen**ltifln 
fiffw ttvi|*d »pp^ii^ii3fw nwouil for die 
Tc*ai InjifLfl^fttl SN 7G477, CoTiphen 
SoufifJ Gansf *Tof 

Oidcr-No. IH 6fi-95 

UK MicroMifl SASlC R«l4'*niM Uanu«l 
Ordar No. ISt $9,9^ 

ftfiAfivtii^. HintfbQofe tof S5Q7 and BBOl 
Otdf'No 152 S8JS 

BookilorOSI 
Tha Fim Back ol OHIO a |S7 S7.» 
Th«S.iMtiil5dokaf OHIO ^ MiS tlSb 
TiM Thiftl Boo^ at OHIO » 1^9 fiT.95 
Tha Fourrh Book d( OHIO ^1M S9.95 
Thi FiMf^ BookofGHIO ■'f^S^ E7.95 

Bar* bMrdJ fnCH^ the Ctuiiom A?PL£ Book 



thcaistomoDiiie 




6522 i;0 Bovd 
CPROM Borrar 
eK EPFlOM'RAMSoArd 
PiotoTVping boartf 



t:EC% £39.00 
= fiO/ £49.00 
^eC9 S29.00 
3^&&1 t29.DQ 
:*Bq«S4gJka 



Otdf twQ b(wr(h and igait in« bo(A FREE' 



Th« Cui^lom Apfte + OPi** 
MyKariti - A C0!npl*te aoide 
!o tujiomiiing iltt AppI* SofV 
wajB aitf Hardware. 
Ordtr-No.eai S24.9S 



Mil alto nock itw boaiili 
•wMch arc ined in iha booh 
"Tha Cuitom Appla. " 
;bara bOMthl 



F^ogiainininB m 8SD2 UachirK 
Leqiragii on yuih ?EJ * C&M 
2 canipl^na Ed.tor/Afeinbleri 
ISoutcE' foije 3 h«xdump ■* dat- 
cjiptkon phit g powerful 
machiTHt tinjuage nwirtor 

Drdar-Wo.lfiA £19.95 

Abova *d*rhbbn on canana 
jBoofeHo. IfiBmchidatf). 
Ordw-l^o.4BU &39.9S 



P^qfrunming in BASIC ind 
ffittinifm lan^Epc with tha 
7X41 l£2lorTIMEX)tM0, 
OtdtrNo 174 Ibook^ S9.95 

Srtiall Bu linen PrDvanU 

GshtrtilBi* iFtilnji for tha 

lAi$intu UHf.lnvant^ifY'''^^^* 

!>vriina, rnail'HQ Im aiW much 

n^ora. 

OidarNo. 1S6 £14.00 




EDfTOR/ASSBHBta 



dONP 



.^ 



COMING SOON! 

ORDER rVOVIII 

Lode m Tha hrium 

tth YOU' ATaAJ 

I (AUrolc^y »rid h^.w. tn 

E do vow <?i*n riQ>u)tgOa 

njhf ATArflWOI 
rbdW-N^L 171 S9.9& 
Attrolofy and SiO' 
_^'5»^'' rhythm Igr ATARI 

ZZ' '' •T»CknJarNa.72itaS29.« 
'":' i Birth nti'trotlKnaut 
I Oqs'noj.CaM.ijrdiiV. 
' Onkr-N9.7222S29.d5 







No- 164 

TTw p<w)rami from 

txML No, It>4 on diU 

lEnol' tnclitclvdl. 

Ort«-No.71WJI2flOO 

Pto^ami from Book 

No. 1B7 on dlih [book 

indudKiJ 

Ordar No. 7221 £29:96 

GUN'FIGHT 

Thii i}iina (MCdt rvvo 

^VEckJti. Anirruiioni 

ioundComai on a 

bootabkcanatta. 

DrderNo. 7207(19.95 



ATUAS 
UaaQ-AH«mb(a! for 
ATAni«0e'<8K. Oncol 
Tha moiT iMw#*Iul editor MMTibttrt 
on ma rruTha;. Veriaiil* adiior Mith 
KTo!l>r>B Jp to 17k of M^^iu-codt. Vary 
tnM. ironiUiM £k loucca-civto In aboui 5 
lahondi Souica coda can b« tavad on disk 
o5 ca^Mtlc.OncludnATUUNA-l]. 
DrdaiNo. 7099 cEtk vaiutm £83.00 
Ordar-No. 7999 rartridga vcrnon fi12SJn 
ATAS 

Sama at ATM AS tHiT tvrrticut rnKTo- 
capdbjlily CuuTle-tut^ 
OrdaiNo. TOSS ^K RAM f 4fi.95 

0<i«> No. 7998 4eK RAM 849.95 

Programfor 



y ATMONA^ 

Thit If a n»cM 

atf)u9;af| ttut ktt vou 

aaptora itH ATARI RAM/ 

ROM >r«a Yo-j c«n no^ v {»*- 

womlv ulectU aidrni. opcoda. or 

vpUBnd. Alto very laiuBbCa In unde^ 

Rarrdind itie miCfDp'Dmwr Includes 

ATMOfJAI. 

Otriar-No. 7tH^ osvtta vwuan S43:» 
0«thfNcL7D5a Aikwiiati £54.00 
ATMONAl 

A cour«rfur ri9dch4i>» lan^age monitar. 
OiMiia^C>l«. (JUTtD (h»A and ASCill, 
t^iTiifk fri«fiX>iY toonioir. block iranrlw, 
tiir FTMino^Y blacfc. Mva end loadfTTBchtna- 
laryi»9a progmtn. ran (KD^^m. Piintcr 
DOtian via thrve diffeirni iniarlicrt 
Drdar-No. 7072 cntftu varilan SlQ.95 
Ordai ho. 7023 diik wn«m £24.95 
Oidtf «». 7024 carDbd^n.uon 169.00 



FORTH 
(rofli Elcomp' 
PubllihfniLtnc. ii in ex- 
tardnl Figl^Dfth-vtMion, Editor 
ftKi i;0 pacfcags indudad. Ublity 
picica^e indtides dKomptliti, Mctor 
core. HcK4tuRV (ASCIII. ATARI 
F)Stfiandl)^ng. untl graphic vKI wuftd, 
loyillck pfogram ar>d playti nunik. 
Extramalv pmwrf id* 
Or^l4«'-No.70SS diih £39:9& 

Roaling poinl padkaga wiPi iri^oQ. 
fTfllilc lu<tclioni(0-SQnl 
Ordar<«lB. 7230 dnh £29.95 

LMfn-FORTH irom Ekomp PubFt- 
ihing. Inc. 

A tUnCt trf Fig-Fonh tor the beg-tvHr. 
On diik ia2K RAMI « on canvtla 
tlARAm. 
1>dar^lo. 7053 £ 19.96 



.- *- {Ca^.-i»il 



DnUf-No. 23D9 
M«ilir>g Lilt 



£4.95 
£lfl-95 



HatdfirvAODOhti 

tor ATAfll 
EPROM BOARD 
■[C*H>«: 

owo 4h EPflOMf 
(25321. EPflOMi 
noi incl^MM- 
ll'^ - ^ 7043 £29.96 

EPROM BOARD KIT 

Same ai ahoM but tufc biHrd linJy wil^ 

Ordir-No. 7234 £14.95 

Pnntar IntarTaca 

Tfu» conjiFueficn anicM nuntt wvlth j>nn- 
tM orctibt tid«rd f wftwara Vou can uia 
Tha tPSOW oimtar wiitinui ih« ATARI 
pfiniK ioi*(1#ar. (GinKpori 3 and 4). 
Ofdar-No. 7211 819.9S 

RS332 IntariK* Iv yodi ATARI 400/600 
So'twSTD * connKfor * cwnstr aitida. 
Or^.Na.S29l £19.35 

EPROM BURNER for ATAfll 400/300 
A'cfcl wilfi (pTFKpon. No addriinfijl 
powei ujOf>4yCafn«4 comiil. aiMmOM 
with lofitwaia 12TT6J/32JS33I. 
Drdw-N4.7D42 £179.00 

EPBOM BURNER for ATARI 4DO;»00 Kit 
'Prirhtml circuit ticuird liKit. Mitlwara and 
ej<itr™iw cofiitruciton anicFa 
OtdBT'No 7292 £49.00 









^1 



Invenury 
1 Conirol — Coii- 

n-'eiclv rrwnu dii*tf(, 
Order-No. 72T4 cau. £19.95 
Ofrhf Ho. 72t5 dhk whan £?dS 
irmhoa atrinng fw Small Bijun*H 
Tfi-i» (so^vTi rrjkov -iMitlng invOicax 
eaiv 

Ordat-N*, 7201 oucrt* v*f tu>n £29.95 
Ordat No. 7200 ink vwMon £39.95 
ATAMENtO '- Th* ii Ifia dalu block vc^ 
ilwayi wanlad. Mtkn aMacthra itme 

pljfmvjvMv* 

OictofNo. 7390 iJitkortly £29.95 




MtiliAi^ 

-" LHt - Th-i, menu 
drnnn ■^a^t^m alicni 
Uw RTUJI tkuttrtaii man |6 
he«P uach of rttnlan *fid cajjtomtn. 
YlWi C»f> warch (or a nima o< acldraif of 
a oarraifl town iir for in odUrau vviih a 
iOMTain n«i«' &0 Mffheuin w nut jnio 
ona)(l« 

Onter No. 7212 cawttt n<wMi £1995 
Ord»-No. 7213 4A <^T»kw £2455 



tfnonmt. II 

iCrolljng. 
artd figh! 
ebrn(nW»di 

OcdorNr*, 



AT5XT-1 
Thii wordprooacr 
tian evcai;«ot buy Iw ^Kir 
: faaiuTBs screen iviapiid edibflig. 
tTiring sewch (avan r^ttttdl. Jefl 
mars^n junjficjt.on Ow? 30 
L Taxi can be uwd »n didk ot 

7210 coMtwvMiion £29^ 
721B ibikvaraion £34,95 
7217 cjrtridga vanion £59.00' 
lai* >h« BIT3&0a)l cvciii avail 
C»h !»9iilf for ATARI 
dhlc onty (49^ 



1.7307 



Deflector 



FrankJ.Tyniw 



You'll find that tlii^ giinic /s quitt' a brainlcascr. 
Sfratcgicnlh/ placing yam Deflector and predicting n 
bouncing ball's trojectory is no easy task. If you like 
realtime strategy, Deflector's dynamically changing 
play field will provide hours of challenging fun. 
(Versions for the uncxpanded VIC, Atari 4001800, and 
Apple II.) 



This is an adaptation for the 5K or 8K VIC of Frud 
Dunlap's Deflection program (frt)m Vol. 1, 
Number 3, PET User Notes). The idea of the game 
is simple. A ball bounces from side to side or from 
top to bottom of the screen. Pressing the left arrow 
key above the control key will print a slash in 
front of the ball's path, deflecting it 90 degrees. 
The FT key will print a backslash (\). Your goal is 
to deflect the ball into the square targets, using as 
few slashes as possible to achieve the highest 
score. 

Scoring is ten points for every block hit, minus 
one point for every slash used and minus five 
points for every slash on the screen if you hit the 
panic button. The panic button is the British pound 
sign {£). If you get too many slashes on the screen 
or deflect yourself into a corner, hitting the panic 
button will remove all slashes, subtract five points 
per slash, and resume the game. 

The subroutine at 63000 is a useful utility you 
mav want to include in other programs. When 
the program starts, it asks "adjust screen? (y/n)"- 
The screen will switch to a black border and white 
background, and color bars for fine tuning your 
set. The cursor control keys will move the entire 
screen up, down, left, or right to adjust for 
your TV. 

Press D when done adjusting, and the pro- 
gram asks if you want instructions. Then it will 
ask for number of targets. The program then will 
select random screen locations for the targets (160- 
200). Lines 700-990 handle the score display and 
rerun lines. Lines 4300-6210 are the sound rou- 
tines. This program works on the unexpanded VIC 
or with the 3K cartridge suggested modifications. 

Instead of a block for a target, you could use 
programmable character functions. The targets 
could be germs or political symbols, or instead of 
a ball you could use up, down, left, and right 
darts, arrows, anything. 

66 COMPUTE! Uav)963 




A typical game of "Deflector," VIC version. (Other versions 
use similar character graphics.) 

Program 1:vic version 

10 PRINT" (CLEArI ":TR=208:J=3:BC«36879:VO= 

BC-1 : S4=BC-2 : S3=BC-3 : S2=BC-4 : Sl=BC-5 
20 GOSUB63000:POKEBC,93:V=15 

122 PRINT" {down} INSTRUCTIONS? (Y/N) 

123 GETV$:IFV$=""THEN123 
125 IFVS="Y"THENGOSUB1000 
130 PRINT" {clear} "CHR$ (142) 
140 K=0:T=0:CL=5 

142 INPUT" {down} HOW MANY TARGETS" ; J :J=ABS( 

J) 

144 IFJ>506THENPRINT"TDO MANYl " : G0T0142 

146 IFJ<10ORJ>200THENPRINT"{DOWN}BRAVE, AR 

EN'T YOU?" 

155 FORI=1TO1000:NEXT SPRINT" {clear j ":GOSUB 

7000 

157 SS=7680:SR=38400 

160 FORI=lTOJ 

170 A=INT{506*RND(1) ) 

180 IFPEEK(SS+A)=TRTHEN170 

185 POKES2,0:POKES3,0 

190 POKESS+A,TR:POKESR+A,6;GOSUB4300 

200 NEXT I 

205 POKES2,0:POKES3,0 

210 A=INT(506*RND(1) ) 

2 30 U=A+SS 

240 DI=1:IFRND{1) >. 5THENDI=-1 

300 GETX? 

310 IFX$<> ""THEN600 

3 20 NE=U+DI 

330 IFABS(DI)=1THEN430 

340 IFDI>0THEN380 

350 IFNE<SSTHENDI=-DI :GOSUB6000:GOTO320 

3 55 A=NE 

360 IFPEEK(A)=77THENDI=-1 :NE=NE-1 
370 IFPEEK(A)=7aTHENDI=l:NE=NE+l 
375 GQTO530 



\)S@W 




Z^ra K]/5\^B lA P 



o^PTO 




/A\(g^D(o)[;^ 



FROGGER™ - The popular 

coin-op comes homel Action 

so fast and graphics so brilliant, 

you'll swear you're at an arcade! 

$34.95 








JAWBREAKER" - No more Stale mazes! 
They're for mice and other pests! 
Everything moves in a flurry of color 
even the walls! $34.95 cartridge 



3i'^ 



CROSSFIRE™ - Attacking aliens sun-ound 
you in a game of speed and accuracy! An 
ever-dwindling supply of ammunition Is 
your only defense! $34.95 cartridge 




These smash hits on other computers are now available for the Commodore 64! 
And it's just a start. The best! The brightest! The fastest! That's our promise. Get 
your Frogger, Crossfire or Jawbreaker from your local dealer or order directly from 
Sierra On-Line, Inc., Sierra On-Line Building, Coarsegold, Calif. 93614 (209) 683-6858. 



ADD ONE DOLLAR FOR SHIPPING 
MASTERCARD • CHECK • COD ACCEPTED 



SiERRJVi^mL 




\Siema 



SIERRAVISION IS A TRADEMARK OF SIERRA ON-LINE, IMC. 
lOGGER IS A TRADEMARK OF SEGA ENTERPRISES, INC, JAWBREAKER IS A REGISTERED TRADEMARK OF SIERRA ON-LINE, INC. CROSSFIRE IS A TRADEMARK OF SIERRA ONLINE. INC. 



380 IFNE>SS+506THENDI=-DI:GOSUB6000:GOTO32 
390 A=NE 

400 IFPEEK(A)=77THENDI=1:NE=NE+1 
410 IFPEEK(A)=78THENDI=-1:NE=NE-1 
420 GOTO530 
430 IFDI>0THEN490 

440 IPNE-22*INTCNE/22}=1THENDI=-DI:G0SUB62 
00:GOTO320 

4 50 A=NE 

460 IFPEEK(a)=77THENDI=-22:NE=NE+DI 

470 IFPEEK(A)=78THENDI=22:NE=NE+DI 

480 GOTO530 

490 IFNE-22*IKT(NE/22)=2THENDr=-DI:GOSUB62 

00:GOTO320 
500 A=NE 
510 IFPEEK(A)=77THENDI=22:NE=NE+DI 

5 20 IFPEEK(A)=78THENDI=-22:NE=NE+DI 
5 30 P0KEU,32 

540 IFPEEK(NE)=32THENP0KENE,81 :U=NE:GOTO30 


550 IFPEEK (NE)=TRTHENK=K+1 :SC=SC+10 
552 IFPEEK(NE)=TRTHENGOSUB5000 
5 55 POKENE ,170: U=NE • F0RI=1T025 : NEXT 
560 IFK=JTHEN700 

5 70 GOTO300 

600 IFX? = "i-"THENA=78:GOTO630 
610 IFX?= " [F1 1 "THENA=7 7 : G0T06 30 

615 IFX?="£"THENGOSUB2000 

616 IFX5="Q"THEN990 
620 GOTO320 

625 GOSUB4600 

6 30 IFPEEK (U+DI ) =32THENPOKEU+DI , A: SL=SL+1 : 

SC=SC-1 
640 GOTO300 
700 REM 
712 PRIST" (clear! ":POKEBC, 125 

715 IFSC>HSTHENHS=SC: PRINT" {rev} NEW "; 

716 PRINT"HIGH SCORE: "HS"ElEFT) " 
720 PRINT" [down} IT T00K"SL"SLASHES 
730 PRINT" (DOWnItO HIT" J "TARGETS" 
905 PRINT" (down} YOUR SCORE" ;SC 

910 PRINT" (02 D0WN}TRY AGAIN? (Y OR N) " 
920 GETW? :IFW$=""THEN920 

925 IFW?="N"THEN990 

926 SL=0:SC=0 

930 PRINT:PRINT"HOW MANY TARGETS" ;: INPUTJ 

940 J=ABS(INT(J) ) 

960 PRINT" [clear] ":POKEBC,93:GOSUB7000:K=0 

:T=0:GOTO155 
990 PRINT" (clear) ":P0KEBC,27:END 
1000 PRINT" [clear]" 
1010 PRINTCHR$ (14); " THE OBJECT OF THIS 



1015 PRINT" 
1020 PRINT" 



down] GAME IS TO DEFLECT THE 
DOWN] [UP]BALL into THE BOXES BY 

1025 PRINT" [down] (UP]USING _ AND Fl KEYS 

1030 PRINT" (down] TO PRINT DIAGONALS IN 

1035 PRINT" [down] ITS PATH. I_F YOU GET 

1040 PRINT" (D0WN}STUCK IN A LOOP USE 

1045 PRINT" (DOVrtj] THE \ KEY AS A PANIC 

1050 PRINT" {dOWN}bUTTON. 

1085 print" (03 D0WN}HIT ANY KEY... 

1090 GETB$:IFB$=""THEN1090 

1100 PRINT" (clear) {D0WN}SC0RING IS 10 POINT 

S 
1110 PRINT" [DOWnJpER BLOCK HIT, ONE 
1120 PRINT" [DOWNJpOINT SUBTRACTED FOR 
1130 PRINT" [down] EVERY SLASH YOU LAY, 
1140 PRINT'- [down] AND -5 FOR EVERY SLASH 
1150 PRINT"ON THE SCREEN IF YOU 
1160 PRINT" (DOWn)HIT THE PANIC BUTTON. 
1170 PRINT"{04 D0WN}HIT ANY KEY TO START.." 

1180 GETA$:IFA$=""THEN1180 

1190 RETURN 

2000 FORI=SSTOSS+506 



2010 IFPEEKCI ) <>77ANDPEEK(I) <>7BTHEN2030 
2020 GOSUB4300 : P0KES2 , : POKESS , : SC=SC-5 : PO 

KEI,32 
2030 NEXTI 
2040 RETURN 

4300 SO=INT(RND(1)*100)+129 
4310 P0KEV0,V:POKES3,S0:P0KES2 
; RETURN 
; FORS=128TO250STEP10 



, S0:F0KT1=1T0 



:POKES4,0: RETURN 

:POKES3,2 50:FORII=1TO25:HEXTII 

:POKEVO,0: RETURN 

: P0KES3, 245: FORI I=1T025: NEXTI I 

;POKEVO,0 



:H=PEEKC368 



3 5:NEXTTl; 
5000 POKEVO.V; 
5010 POKES4,S 
5020 NEXTS 
5030 POKEVO,0:1 
6000 POKEVO.V :I 

:POKES3,0:I 
6 200 POKEVO.V :I 

:POKES3,0:I 
6210 RETURN 

7000 FORI=38400TO38905:POKEI,6 :NEXT: RETURN 
63000 REM SCREEN ADJUSTMENT 
63010 POKE36879, 24:PRINT" [CLEAR} ' 

64) :V=PEEKC36865) 
63020 PRINT"ADJUST SCREEN? (Y/n)" 
63030 GETA? :IFA$=""THEN63030 
63040 IFA$="Y"GOTO63060 
63050 PRINT" (clear) (bLK] "; : RETURN 
63060 PRINT" (02 D0WN}USE THE CRSR KEYS TO 
63070 PRINT" [down] MOVE SCREEN AND THE 

63080 PRINT" [DOWnJlETTER D WHEN DONE[02 

down] 

63081 PRINT" [rev] {red} RED " 

63082 PRINT" [rev) (CYN}CYAN 

63083 PRINT" (rev) {PUR]pURPLE 

63084 PRINT" (rev) {GRN)GREEN 

63085 PRINT" {rev} {BLU}BLUE 
PRINT" (rev) [YEL)YELL0W 
GETA5 : IFA?!^" "THEN63090 
IFA5="D"THENPRINT" (clear) [BLK] "; :RETUR 



63086 
63090 
63100 
N 
63110 
63120 
63130 
63140 



IFA$="[UP} "THENV=V-1:IFV<0THENV=0 
IFA5="{D0WN} "THENV=V+1 sIFV>40THENV=40 
IFA$="{lEFT) "THENH=H-l:IFH<aTHENH=0 
IFA$="{ right] "THENH=H+1:IFH>17THENH=17 



63150 POKE36864,H:POKE36865,ViGOTO63090 



Notes On The Atari 
And Apple Versions 

For the Atari, use the two keys with slashes 
on them (the plus key and the question mark) 
to place your slashes. The ball will deflect at 
a 90 degree angle. When the game begins, 
you should hold down [SELECT] and the 
screen will start to fill with targets. Let go 
when you think you have enough. 

For the Apple, enter the number of 
targets you want to play with. Very few or 
very many targets makes for a difficult game. 
Use the left and right arrow keys to lay down 
slashes. 

For either the Atari or Apple, use the 
ESCape key as the panic button if your ball 
gets trapped. 



70 COMPtlll! Moy19a3 



HAVE you FLOWK 






\ 



^>' 



''^i 



pavement, your pulse quickens, you're 

down, but watch it, you're pulling 

risht! Brakes, brakes! Left more! 

You've stopped safely! Good job. 

t The first real-time flight simulator 

\, for ATARI is nov^ available from 

L\ AAMG Micro Software. Written en- 

.■i\ tirely in machine language, 

:; \ there are four levels of difficulty, 

\ landings in clear or foggy 

^ \ weather, landings with or with- 

\ out instruments, and with or 

\ without the real-time view 

"A from the cockpit. Final 

\ Flight! requires Atari 

A 400/800, 24K, 1 joy stick, 

l.\ and is offered on tape or 

\ disk for the same sug- 

\ gested retail price 

\ of S29.95. 



'■§^ 



^^i*Qy;: 



vm^ 



Imagine \ 

yourself \ ^/ 

at the con- \ t ' 

trols of a \ '-'" ^ 

small, single- \ 

engine plane, \ 

10,000 feet in \ 

the air, on your \ 

approach to the \ 

runway and safe- \ 

ty. You're running \ 

low on fuel, but \ 

your instruments \ 

show that you're on \ 

the glide path, and \ 

lined up with the run- \ 

way. It's a beautiful, sun- \ 

ny day, and you can see \ 

the airport in the distance, \ 

across the grassy fields. But \ „^. 

the crosswind is tricky, and it \ "X' 

will take all your skill to land \ .- 

safely. You're coming down V / 

now, and the runway is getting \\ 

closer. A bit left, OK, now lower V 

the power, fine, now put down the > 

flaps. Pull the nose up a bit more, 

you're a little low. Watch the power! 

Don't stall. OK. Here comes the 

runway. You hear the squeal of tires on 





Y< 







%\- 



;*. 







v.. 



\j 



Final 
Flight! 

is available at 

your local dealer or direct 

from MMG Micro Software. Just 

send check or money order to P.O. Box 

131, Marlboro, N.J. 07746 or for Mastercard, 

Visa, and C.O.D. deliveries call (201)431-3472. Please 

add $3.00 for postage and handling. New Jersey residents add 

OTb sales tax. Atarii5areai5tHBdtfadcm«tnfAt8fi lni-_ 



Program 2: Atari Version 



100 

110 



120 



130 
140 



150 
160 



170 

175 

177 

180 

190 

200 

210 
215 
220 
230 

500 

505 

510 
520 
521 
522 



530 
600 



610 


620 


6 30 


640 


645 


650 


660 


670 


700 



REM 



fTT=li<^5f.*<.]:0:trf:1:Ht'J^:;--»< ii: 

GRAPHICS 1:P0KE 756 , 226 : SE TCOLDR 
4, 16*RND (0) , 12: POKE 7 08, PEEK! (71 
2> 
LEFT=7: RIGHT=6: POKE 752,1:? " 

<:tab: <:down3 PRESS bi^w^^i for targ 

ETS" ; 

BALL= 1 48: TARGET=192: COLOR TARGET 

IF PEEK (5327V) =5 THEN RX=INT<12* 

RND(0)+4):RY=INT(15*RND(0)+4):LD 

CATE RX,RY,Z:IF 2=32 THEN PLOT R 

X , RY: NUM=NUM+i 

IF PEEK (53279) <>6 THEN 140 

VX=0: VY=1 : BX=9: BY=1 1 : GRAPHICS 17 

+32:PDKE 756 , 226 : SETCDLOR 4,16*R 

ND (0) , 12: POKE 708 , PEEK < 7 1 2 ) 

IF BX;2 OR BX>18 OR BY<2 OR BY>2 

2 THEN VX=-VX: VY=-VY: BX=BX+VX : BY 

=BY+VY 

LOCATE BX, BY, OLD: IF OLD=32 THEN 

COLOR BALL:PLOT BX,BY 

IF OLD=TARGET THEN NB X=B X : NBY=B Y 

:GOTO 600 

NBX = BX+VX; NBY = BY + VY; IF PEEK(764) 

=28 THEN GDSUB 3000 

LOCATE NBX,NBY,Z:IF Z=32 AND PEE 

K(764)<255 THEN 500 

IF Z=32 THEN GDSUB 700 : B X=NB X : BY 

=NBY:GOTO 170 

IF PEEK(764)=2B THEN GQSUB 3000 

IF Z=LEFT THEN 1000 

IF Z=RIGHT THEN 2000 

IF Z=TARBET THEN COLOR 32:PLCT N 

BX,NBY:GOTO 600 

REM MAKE A SLASH! 

IF PEEK (764) <>6 AND PEEK ( 764 )<>3 

8 OR BX<2 OR BX>13 OR BY<2 OR BY 

>22 THEN 170 

IF PEEK(764)=6 THEN COLOR LEFTjT 

=VY: VY=VX: VX=T 

IF PEEK(764)=38 THEN COLOR RIGHT 

:T=VY:VY=-VX:VX=-T 

POKE 764, 255: LOCATE BX,BY,Z:IF Z 

=TARGET THEN 600 

IF Z=LEFT OR Z=RIGHT THEN 210 

PLOT BX , BY: BX=BX+VX: BY=BY+VY: SL= 

SL+l:LOCATE BX,BY,Z:IF Z=TARGET 

THEN 600 

GOTO 170 

COLOR 32:PL0T BX , B Y : H I T=H I T+ 1 : FO 

R W=15 TO STEP -1:S0UND 0,W 

,W:NEXT W:Z=32:IF HITCNUM THE 

00 

GRAPHICS 2+16: POSITION 5,0:? 

■■ HTd^DnHi;" : ? #6:? #6 

■^ *6:"'C3 SPACES>tarqets " ; NUM 



«6 



#6; 



iZ SPACES>targets 
<:3 SPACES>gEH3I^ 



; SL ; 



70; 



■^ #6; "{4 SPACES>aHiia= ";INT(N 

100/SL) -ESC: ? #6 

IF ESC THEN "^ #6;" -penalty 

SC 

? #6:-:' «6; " PRESS l:3=fcilJ:}: " 

IF PEEK (764 ) < >1 2 THEN 660 

POKE 764,255: RUN 

LOCATE BX,&Y,Z:IF Z=TARGET TH 

600 

IF Z<>LEFT AND Z<>RIGHT THEN 





7 10 R 

1000 
10 10 

10 20 

1025 
1030 
2000 

2010 

2020 

2025 
20 30 
3000 



3010 

3020 
3030 



R 32: PL 
ETURN 
OTD 999 
FOR W=l 
0, 10, W: 
T=VY: VY 
X+VX: BY 
LOCATE 
IGHT TH 
IF Z=TA 
GOTO 17 
FOR W=l 
0, 10, W: 
T=VY: VY 
NBX+VX : 
LOCATE 
IGHT TH 
IF Z=TA 
GOTO 17 
P=PEEK ( 
-0. 5: Z= 
OKE 712 
W 

SCR=PEE 
= TO 4 
R+I , 159 
POKE SC 
=1 ) : NEX 
POKE 70 
255: ESC 



DT BX.BY 



4 TO STEP -2: SOUND 

SOUND 1 , 34, 10, W: NEXT 

=VX : VX=T: GOSUB 700:B 

=NBY+VY 

BX,BY,Z:IF Z=LEFT OR 

EN 210 

RBET THEN 600 



4 TO STEP -2: SOUND 

SOUND 1 , 24, 10, W: NEXT 

=-VX : VX=-T: GOSUB 700 

BY=NBY+VY 

BX,BY,Z:IF Z=LEFT OR 

EN 210 

RGET THEN 600 



712) : FOR W=15 TO S 

PEEK (53770) : POKE 70B 

,Z:SOUND 0,100,0,W:N 



0, 3 

X = NB 

Z = R 



0,2 
M 
■ BX = 

Z = R 



K (88) +256* PEEK (89) : F 
79: A=PEEK <SCR+I ) : PDK 

R+I,A»(A<70 OR A>71 
T I:POKE SCR+I-2,0 
8,P:POKE 712,P:PDKE 
=ESC+1 : RETURN 



TEP 

,Z:P 
EXT 

OR I 
E SC 

OR A 

764, 



Program 3: Apple ll version 



REM APPLE DEFLECTOR 

TEXT I HOME 

DIM XL7.<23)i FOR I = TO 7iZ = 12 

B » IiXL7.(I) = Z + 1024iXL7.(I + 8) 
= Z + l(964iXL%(I + 16) = Z + 1104 

! NEXT 

DEF FN A(V) = XLy.(BY) + BXi DEF FN 

P(V) = PEEK ( FN A(0)) 
120 LEFT = 1561 RIGHT = 175i INPUT "HOW 

MANY TARGETS? ( 1-720) i " | A*iNUM = ABS 

( INT ( VAL (A«)>) 
125 IF NUM < 1 OR NUM > 720 THEN RUN 



100 
110 

lis 



117 



130 
135 
140 
145 



, 12 
N 2 


150 
160 
16S 


#6; 


170 


. 1 


175 


? » 


177 


UM* 


180 


";E 


190 




200 




210 


EN 






215 


COL 


220 



BALL = 174s TG = ASC ("•"> 

HOME 

FDR I = 1 TO NUM 
BX = INT (35 » RND (1)) + SsBY 
INT (19 « RND (1)) +3 

IF FN P(V) < > 160 THEN 145 

POKE FN A(V),TEi NEXT 
VX = 0tVY = - IsBX = 19iBY = 

IF BX < 2 OR BX > 38 OR BY < 

BY > 22 THEN VX = - VXsVY = 

;BX = BX + VXsBY = BY + VY 

IF FN P(V) = 160 THEN POKE 

(V),BALL 

IF FN P(V) = TB THEN NX = BXsNY = 

BY I SOTO 600 
NX = BX + VXiNY = BY + VYsZ = PEEK 

(XLy.(NY) + NX) 

IF Z = 160 AND PEEK ( - 16384) > 

128 THEN 500 

IF Z = 160 THEN GDSUB 700; BX = NX 

:BY = NYe GOTO 170 

IF PEEK ( - 16384) = 155 THEN BDSUB 

3000 

IF Z = LEFT THEN 1000 

IF Z = RIGHT THEN 2000 



11 

2 OR 
- VY 

FN A 



7? COMPUTi! May 1983 







KS OF DATA BUT WILL WORK 
ON YOUR 1-DRIVE MICROCOMPUTER 




ARTCOPVRIGHT 
19S1 BAyNIOND BAYLESS 



APPLE 

AND 

TRS-80 

TEXT-ONLY VERSION 

^34,95 




ATARI 

VERSION 

WITH FULL 

COLOR GRAPHICS 

^39.95 




dventnr6 

INTERNATIONAL 

A DIVISION OF SCOTT ADAUS. INC. 



|L*iJ^^i 




BTDHI VAT -nOUJI 




bridge •vsr » •malt iMyan. 

chflHcr llNt. ?«« i»r p*r »h« trail l« 

<F«u th« brrdfl* 11 Irvaiw* friM 




^J 




NOW AVAILABLE FROM YOUR LOCAL DEALER OR DISTRIBUTOR 

OR ORDER TOLL FREE (800) 327-7172 OR 

BY fyiAIL FROM ADVENTURE INTERNATIONAL • BOX 3435 • LONGWOOD, FL 32750 



230 

500 
S05 



510 

520 

521 
522 

525 

530 

600 

610 
615 

620 
630 

640 



IF Z = TG THEN POKE XL7.(NY) 
160: GOTO 600 
REM MAKE A SLASH! 
A = PEEK ( - 16384) - 



NX, 



12B: 
B AND A 



POKE - 
< > 21 



16368,0: IF A < 

OR BX < 2 OR BX 
BY > 22 THEN 170 

IF A = a THEN CH = LEFTiT = VY:VY = 
VXsVX = T 
IF A = 21 THEN CH 
Y = - VXsVX = - T 
IF FN P(V) = TB THEN 600 
IF ( FN P(V) = LEFT) OR ( 
RIGHT) THEN 210 
POKE FN A<V),CH:BX = BX 



38 OR BY < 2 OR 



RIGHT: T = VY: V 



FN PCV) = 



+ VX:BY = 



IF FN P(V) = 



BY + VY:SL = SL + 

TG THEN 600 

GOTO 170 

POKE FN ft(V),160:HIT = HIT + 1:Z = 

160: IF HIT < NUM THEN 200 

HOME : FLASH : FOR I = 1 TO 24i PRINT 

TAB< 39): PRINT : NEXT 
VTAB 3j INVERSE : PRINT TAB( 15); 
"GAME OVER"; TAB( S?) : PRINT : PRINT 

PRINT i PRINT : PRINT TAB< 6) ; "TA 

R6ETS "jNUMi TAB< 3<?) i PRINT 

PRINT : PRINT : PRINT TAB< 6) ; "SL 

ASHES ";SLi TAB ( 39): PRINT 

PRINT : PRINT TAB ( 8)5: NORMAL : PRINT 

"SCORE "5 INT (NUM « 100 / SL) ~ E 

SC;: INVERSE : PRINT TAB ( 39): PRINT 



650 IF ESC THEN PRINT : PRINT TAB ( 5 
); "-PENALTY "jESC; TAB ( 39): PRINT 
: PRINT 



660 PRINT ; PRINT : PRINT : PRINT TAB ( 
13) 5 "PRESS ";: NORMAL : PRINT "RET 
URN"i! NORMAL : INVERSE : PRINT TAB C 
38) ; : SET A«: NORMAL 
RUN 

= FN P<V): IF Z = TG THEN 600 
IF (Z < > LEFT) AND (Z < > RIGHT 
) THEN POKE FN ACV),160 
RETURN 
GOTO 999 

T = VY:VY = VX:VX = T: 
X = NX + VX:BY = NY 
2 = FN P(V) : IF (Z 
RIGHT) THEN 210 

IF Z = TG THEN 600 

GOTO 170 
T = VY:VY = - VX:VX = - T; GOSUB 
700:BX = NX + VX:BY = NY + W 



670 
700 Z 

705 

710 
999 
1000 

1010 

1020 
1030 
2000 

2020 

2030 
3000 
3010 

3020 

3030 



GOSUB 700 :B 
+ VY 
= LEFT) OR <Z = 



Z = FN PCV) I IF 
RIGHT) THEN 210 

GOTO 170 

FOR I = TO 23: 



CZ = LEFT) OR (Z = 



FOR J = TO 39 



P = XLV.(I) + JiA = PEEK CP): POKE 
P,159 

IF <A •= LEFT) OR 
A - BALL) THEN A • 

POKE P,Ai NEXT 
li RETURN 



<A = RIGHT) OR ( 
- 160 
NEXT I ESC = ESC h 



COMPUTE! 

The Resource, 



THIS FUNNY-LOOKING LITTLE DEVICE 



Introducing the Disc-Doublerf the funny-looking amazing little 
device that actually doublesyow "floppy disc"*capabilitiesl Just put 
a floppy disc in and it'.s re-aligned for use on its "flip side." It's 
that simple! And at just S9.95 (plus ^1.50 for postage and handling) 
itil pay for itself the minute you use it! From Link Marketing, 
where we looked at the problem from both sides... and 
found a way to save you money! 



CAN DOUBLE 

YOUR DISC 

CAPABILITIES! 

Just $9,951 



(plus $1.50 postage and handling- B.C. residents add 6% tax) 



IN CANADA: 

Call 1-800-268-6364 

B.C 112-800-268-6364 

or write: Unk ^Aarl<eting 

Suite 1500-1176 W. Georgia SL Vancouver, B.C V6E 4A2 




IN THE U.S.: 

1-800-323-1717 operator 515 
Illinois 1-800-942-8881, operator 515 

or write: Unk Marketing 

219-lst Ave. N, Suite 215, Seattle, WA 98109 



74 COMPUTE! MoyW83 




1^ 






You're the pilot of The 
Eliminator, a space fighter 
of the Defender Class. Your 
ship can respond with 
lightning speed, and it's 
armed, to the teeth with 
awesonne firepower. 

But you're outnumbered! 
And your attackers are^ 
relfhtless. Your onlj 
options are victory or aj^ 
grave in space. ^^^ 



FEATURING 
SPECTACULAR 



GRAPHIQ^ 



"THE BEST ARCMJE-TYPE^GAME K. 
I'VE SEEN 
POWER!" 4r\.i 

DNNELL, 



lES ELIMINATOR 
, L^CAN'T STOP 




FOp SHEER 
"'**YING!" 



PATH 
ARCAOi 



RSON. 



N'DEBSON . 
tl VERSION BY STf VEfCOLEMAN 
VERSION BY w1yN£ WESTMORELAND & TERRY GILMAN 



;' -^ INTERNATIONAL "■ 

^^ A DIVISION OF SCOTT ADAMS, INC. ATARI ■ ; 

•• • BOX 3435, LONGWOOD FL 32750 TRS-80 • 

/ i (305) 862-6917 (QUESTIONS) ype on 

QPPEFI FROM YOUR FAVORITE DEALER HU-MU - 
or CALL-T/dCJL FREE (S00» 327-7172 (ORDERS ONLY PLEASE) 
■SHIPPING** HANDLING AflE-.EXTRA. PRICES SUBJECT TO CHANGE WITHOUT NOTICE 
WRITE FOB OUR FREE 150 PROGRAM CATALOG 



».»r^l-16KTAPE 
ATARI ■ 32K DISK 
TRS-80 -IfiK TAPE MOl 



TRS-80 - 32K DISK MO^L 1 OR 3 



0420134 


$29.95 


050-0134 


$24.95 


052-0134 


$24.95 


010 0134 


$19.95 


012-0134 


$24.95 


ART ' 1981 • 


DON DIXON 



CROSSWORDS 



Williom Loercher 



This program will construct crossword puzzles for you 
on a VIC, TI, PETICBM, Atari, or Apple. There is an 
option to have a printed copy made of the final puzzle. 

If you've ever tried to make your own crossword 
puzzles, you know the procedure is very time- 
consuming. I have designed crossword puzzles 
for my students in chemistry and have spent many 
hours toiling over fitting the correct words in their 
correct spaces. Procedures such as these are ideally 
suited for the microcomputer. This program can 
be run on either the 40- or 80-column PET. As 
written, the program will run on the 40-column 
screen. By deleting lines 100 and 110 and removing 
the word "REM" in lines 130 and 140, you can 
run the program on the 80-column PET. 

About The Program 

Lines 180-450 may be deleted if necessary since 
they only put a unique title on the screen. 

Line 460 asks for the number of words you 
want to use in the puzzle. Using the maximum 
number makes a better puzzle, but it requires 
more time to complete. 

Line 470 asks for the number of vertical words 
to be placed at random on the screen. These words 
are placed so that none are next to each other or 
on the outer border. An asterisk precedes and 
ends each word. 

Line 480 asks if you want the results printed, 
assuming you have a printer. If not, you can copy 
the results by hand. 

Line 490 dimensions the words into an array 
of words and an array of lengths of words. The 
number of words you choose to place in your 
"dictionary" beginning at line 2000 is limited only 
by computer memory. 

Lines 510-520 print on the screen 23 rows of 
39 blocks to be used as the test field. 

Lines 530-610 test the field for proper posi- 
tions and print the vertical words. 

Lines 620-890 test the field for horizontal 
words and POKE them on the screen if the proper 
conditions are met. 

Lines 920-970 enable the printer to make a 
copy of the puzzle as it appears on the screen. 

Lines 980-990 are the subroutine for choosing 
a random screen position. 
Moywaa 



Line 1000 is a time delay for the title program. 

Lines 1020-1030 are used to choose a random 
word from the array to be displayed on the 
screen. 

See Program 6 for the DATA statements to be 
added to the program. 

Lines 2010-2110 are the DATA statements 
containing the words used in the puzzle. If you 
want, you could substitute your own words for 
mine. 

Suggested Improvements 

After completing the program, 1 thought of other 
ways to improve it. First, after all 23 rows are tested 
(Z = 23), you could write another section to the 
main program that tests the columns for word 
fits. This should result in a better puzzle. 

Second, you could keep track of the words 
that fit a given location in another array and 
then choose the longest word from that list. If 
any of you come up with something interesting, 
write me. 

If you do not like typing your own programs, 
I will send you a taped copy of the PET version 
only. Send $3, a cassette tape, and an SASE 
mailer to: 

WiUinm Loercher 
314 W. High St. 
Manheim, PA 17545 




A puzzle takes shape in the Apple version of "Crosswords." 
(Other versions similar). 



PET/CBM/COMMODORE 64 

I^perOip 

Professional Word Processor at a Breakthrough Price 



PaperClip'" performs all the advanced 
features found in Word Processors costing 
much more. . . 

1) Full screen editing. 2) Copy/Transfer 
sentences and paragraphs. 3) Insert/ 
Delete sentences and paragraphs. 
4) Headers/Footers/Automatic page 
numbehng. 5) Justification/Centering. 

6) User defineable keyphrases. 

7) Supports both cassette and disk. 

8) Variable data - Form letters. 

9) Horizontal scrolling up to 
126 characters. 

10) Insert/transfer/erase 

Also available for Commodore 64 

Requires 

Basic 4.0, 32K memory. 

n2S9P 

Dealer enquiries welcome 

BfiTTERiES 
inCLUOED 

71 McCaul Street 
Toronto, Ontario 
Canada M5T 2X1 
(416)596-1405 



columns of numbers. 1 1) Add/subtract 
columns of numbers. 12) Supports most 
dot matrix and letter quality printers. In fact, 
a printer set-up routine is supplied to 
take the best advantage of the printer at 
hand. 13) French and Math technical 

character sets 
available. 



''Look what my new 

letsmedowith 



Here's what you get with the complete 
Alphacom printer project set. 

■ Fast, quiet 40-column Alphacom VP42 printer, which 
includes the full Commodore graphics set. 

■ 5 great software programs. A real 40-column Word Processor, 
graphics Sfcetc/i Pad, beautiful Kaleidoscope program, 
useful Record Keeper, and a general purpose Screen Printer. 

■ Compute Magazine's F/rst Book of WC, full of fascinating 
step-by-step VIC 20 computer adventures. 

■ All the cables, printer paper, and easy-to-follow instructions 
you need to begin enjoying your Alphacom VP42 as soon as 
you open the box. 

Get the complete Alphacom Printer Set for just $209.95 
(suggested list). Call toll free for the name of your nearest 
dealer: 800/538-7047 anywhere in the USA (except 
California: 408/559-8000). If there is no convenient 
dealer, you may order direct from Alphacom. 
Same day shipment with MasterCard, VISA, 
or American Express card. 





Alphaconf printer set 
my VIC 20..r 



Book 



ni;t. ora DO OK r.efi-or 
ba Joe Grimes 

■• I^ Claudius 
Dr - PobeTv Graces 



Back in ths old ciays of 
Enip-ir-e the cruel Eiriper-or Ca 
riiurdered and a new leader., 
ijias chosen by the Praetoria 
'The Romans had rather odd 
orcter- in those days./ The P 
Guard thougt thea had chose 
sirippleton and weak 1 inoj who 
easily manipul atgrj to the G 
(lur poses . 

Much to everyone's =u 
Claudius lasted for oyer a 
and turned out to be a wise 
nioderate leader. Robert Gra 
I- Claudius describes the E 
lire kcfore he ascended the 



Write and print my letters, 
j-iomework — just about anything. 
With Worcf Processor software that 
comes with the printer. 



■;CCRE 50^470 HIGH SCORE 



^ 



m * 







Create my own custom computer 
games. The printer set includes the 
new First Book of VIC: it's full of 
great game Ideas. 



; ="M*vlC SQUIGC 


LE« 






; FEM*FRCiM VIC 1 


001 


US 


ER ' S 


7 FEM*TYPED. hMO 


DEBUGQ 


ED BY 


' C:s=" BiaSkJE^ 








? PRIMT-Z;" 








Iv DRTA- i-,"-",. ■ 




L" 


f r ? 


£C- DHTftl,0,5,6 








3-;- DHTftS? 1,4^,3 








40 DATA3,b,H>8 








50 ['ATA4, 5,0,2 








60 iai>lA$^5),B>;5, 


5) 






70 '^ORI=0TO5 








SO REHDA$a> 








90 NEKT 








100 F0i?I = lT04 








110 FnRj=lT04 








iiS REhDB<.J,1> 








17C-! NEXT 








140 NEXT 








190 Tl=l 








200 T£=l 








- - L = -■ 51 









Learn to write my own VIC 20 
applications. With hard copy 
program listings that help me 
debug my programs. 



4 i4^+T-^4^>w*X-^i">4--i-X"XC>C'S 

*-*»+ •Cx:i;<>::4H-4'^M~H-'>:: a"CC#** 
?♦ ♦##oDx>:-i-i-*4-4-:: :;";■:: L 



*-**« 



Show off my computer graphics 
creations. Software includes 
Kaleidoscope and Sketch Pad 
graphics programs. 



IHE^-EE BERRY PIE 

Incfrecsienr. s 

2 Pk: <3 oz. ea,> crearn 
l-'3 cup powder eci su-i-ar 
1-3 cup sour creaFii 
d tsp -sirated orsn^ie pee 
BafcecJ 9- inch pie shell 
d - 3 CUPS whole fresh 
strswRierries-'raspfcerr-i e 
1 ■■£ cup strawberr-H.-'rasp 
t-T&sifveSf sie'-'eci 

icften cheese. Beat :n 5 
sour crearii and oran*ie peel, 
if! pie shell. Top uith foeri 



Keep the family's favorite recipes 
on a VIC 20 cassette. Now Mom 
can't pretend that she lost the 
recipe for cheeseberry pie. 




fllphacom 

2323 South Bascom Avenue 

Campbell, CA 95008 



C1982Alphacom. Inc. All rpghts reserved. 

Commodore" and VIC 20" are registered trademarks of Commodore Business 
Machines. Inc. Alphacom. Inc. Is not related to Comniodore Business Machines, 
Inc. Offer void where prohibited, taxed, or restricted by law. . 



TM 



Program 1: pet/cbm version 

(40 or 80 Column Screen) 

100 EA=33767:X1=40:A=B:A2=16:F1=15;F2=25:L 

W=33569:OP=33224:WL=3 33 74 
110 A7=I000;B1=20 
120 REM LINES 100,110 ARE FOR 40-COLUMN PE 

T 
130 REM EA=34767:Xl=a0:A=31 :A2=39:F1=30:F2 

=50:LW=34369:OP=33687:WL=33997 
140 REM A7=2000:B1=0 
150 REM LINES 120,130 ARE FOR 80-COLUMN PE 

T 
160 POKE 59468, i2:PRINT CHR$ ( 142 ) : X=RND( -T 

I) 
170 PRINT" {clear} " 
180 FOflX=lTOXl-l:POKE32768+X,ASC( "*"):NEXT 

X 
190 F0RX=1T025 : F0RY=lT0XlSTEPXl-2 : POKE3276 

8+Xl*X+Y,ASC( "*"):NEXTY,X 
200 F0RX=2T0X1-1:P0KE(EA-X1+X),ASC( "*"):NE 

XTX 
210 GOTO260 
220 F0RB=1T0A: PRINT" {home! {20 D0Wn3"SPC(b) 

" "A$:NEXTB:P0KE LW,ASC("*") 
230 FORC=1TO10:PRINT"{hOME} "; 
240 FORD=lTOE: PRINT" [D0Wn5 "; :NEXTD 
250 PRINTSPC(a+1)A$:PRINTSPC{A+1)" ":E=E-1 

:NEXTC: RETURN 
2 60 FORF=1TO17:A=A+1:E=20 
270 READA$:GOSUB220:NEXTF 
280 DATA C,R,0,S,S,W,0,R,D, , ,P,U,Z,Z,L,E 

2 90 FORX=1TO3000:NEXT 
300 GOTO360 

310 F0RB=1T0A2-1: PRINT" {home} {20 D0Wn3 "SPC 
Cb)" "A$:NEXTB 

3 20 POKE LW,ASC( "*") 

330 F0RC=1T013-F:PRINT" {hOME} "; 

340 F0RD=1TQE:PRINT" {dOWK} " ,• :NEXTD 

350 PRINTSPCCA2)A5:PRINTSPC(A2) " ":E=E-1:S 

EXTC:P0KE op, 15: return 

360 FORF=1TO7:E=20 

370 READA?:GOSUB310;NEXTF 

380 DATA P,R,0,G,R,A,M 

3 90 F0RX=1T019:READA$ 
400 IPA$="0"THEN430 

410 POKE WL+X, ASC(A$)-64 
420 GOTO440 

4 30 POKE WL+X, 3 2 
440 GOSUB1000:NEXT 

450 FORX=1TO2000: NEXT: PRINT" {CLEAR) " 

460 INPUT" {03 DOWNIhOW MANY WORDS {MAX: 110 

}";N 
470 PRINT" {02 DOWNIhOW MANY VERTICAL WORDS 
( ":F1;"-";F2; "WORKS WELL) "; : INPU 
T K 
480 INPUT" {02 D0WN}RESULTS ON SCREEN OR PR 

INTER (S OR P)"rS$ 
490 DIM N$(N),L(N) 
500 FOR X=1T0N:READN5(X);L(X)=LEN(N$(X)):N 

EXT:PRINT" {CLEAR}" 
510 F0RJ=1T023 
520 FOR 1 = 1 TO Xl-l:PRIOT"fREVj {OFFr';:NE 

XT I:PRINT" "? :NEXT J 
530 FOR Z=1TOK:E=0:GOSUB1020:REM PUT IN V 

ERTICAL WORDS 
540 GOSUB 980: REM GET A RANDOM POSITION 
5 50 FORX=0TOL(R)+1:B=PEEKCP+X1*X):C=PEEK(P 

-1+X1*X) :D=PEEK(P+l+Xl*X) 
560 IFB<>160ORC<>160ORD<>160THENX=l(R)+1:K 

EXT X:GOTO 540 
570 E=E+1 
580 NEXTX:IFE=L(R)+1THENE=0 



590 P0KE(P),42:REM PLACE * ON EITHER SIDE *" 

OF WORD 
600 FOR X=1T0L{R) :POKE{P+Xi*X) , ASC(MID$(N5 

(R),X,l))-64 
610 NEXT : POKE ( P+X 1 *X) ,42: NS (R) ="0 " : NEXTZ : R 

EM GET ANOTHER WORD 
620 Z=0 

6 30 Z=Z+2:L=0 

640 IF Z>23THEN900 

650 FORX=1TON:E=0:G=0 

660 IFN5(X)="0"ORL+lCx)+2>X1-1THENNEXTX 

670 IFX>NTHEN630 

680 F0RY=1T0L(X) 

690 B=PEEK{3276a+L+Y+Xl*Z) 

700 C==ASC(MID5Cn$(X),Y,1) )-64 

710 IFB=160ORB=CTHENE=E+1 

720 IFB=150THENG=G+1 

730 IF E=0THEN770 

740 IFB=32ORB=42ORG=L{X)THENL=L+1:GOTO650 

750 IF E=L(X)THEN790 

7 60 NEXTY 
7 70 NEXTX 

780 L=L+1:GOTO650 

790 B=PEEK(32768+L+L(X)+1+X1*Z) 

800 IFB=42ORB=160THENS20 

810 L=L+1:NEXTX:GOTO630 

820 B=PEEK{3276B+L+X1*Z) 

830 IP B=160ORB=42THENB50 

840 L=L+1: NEXTX :G0T06 30 

850 POKE(32768+L+Xl*Z) ,42 

860 FORLl = lTOL(X);POKE(3276a+L+Ll+Xl*Z) , AS 

C(MID?(N$(X),Ll,l))-64 
870 H=100:J=0:M=59459 
880 POKEM,J:POKEM,H:POKEM,J 
890 NEXTL1:P0KE(32 768+L+L1+X1*Z) ,42:N5(X)= 

"0":L=L+L1:GOTO650 
900 IF S5="P"THEN920 
910 GOTO 1190 
920 OPEN4,4 
9 30 F0RX=1T024: B=B1 : FORY=lTOXl : IFY> lTHEbJB= 


940 A=PEEKC3 2768-(X1+1)+Y+X1*X):IFA=320RA= 

42ORA=160THENA=166 
950 B$=CHR$(A+64) 

960 PRXNT#4,SPC(B)B$; : IFY=X1THENPRINT#4 
970 NEXTY, X:CL0SE4: GOTO 1190 
980 U=INT(RND(1)*A7) 
990 P=32768+U: RETURN 
1000 FORY=1TO200:NEXT: RETURN 
1010 DATAB,Y,0,W,I,L,L,I,A,M,0,L,O,E,R,C,H, 

P R 
1020 R=INT{RND(1)*N)+1:IFN$(R)="0"THEN1020 

1030 RETURN 

1190 PRINT" {rev)done{off]-hit {rev3c{off1 T 

O CONTINUE"; 
1200 GET F$:IF F$="" THEN 1200 
1210 PRINT" {clear} ": END 
1220 REM BE SURE TO INCLUDE LINES 2000-2110 



Program 2: vie version 



100 X=RND(0) 

110 POKE 36879,25 

120 PRINT" {clear} " 

130 PRINT" {03 down] {right} HOW MANY WORDS" 

140 INPUT" (MAX:110)";N 

150 PRINT" {02 down} {right} HOW MANY VERTICA 

L" 
160 PRINT" WORDS (10-15 WORKS" 
170 INPUT" WELL)";K 
180 PRINT"{02 down} {right} RESULTS ON SCREE 

N OR" 
190 INPUT" PRINTER (S OR P)";S$ 
200 dim N$(N) ,L(N) 



80 COMPUTt! May1983 



The Official 





*• 




The game that puts space games in 

perspeclive. Zaxxon'", one of the most 
popular arcade games of 1 982. is now avail- 
able for use with your home computer 
system. 

Zaxxon'" technology and creativity present 
a 3-dimensional-like playfield which sets 
Zaxxon™ apart from other computer games. 

Zaxxon™ looks and sounds like aircraft 
flight, and players can soar to new levels of 



home computer entertainment. From the 
daring attack on the enemy's floating for- 
tress and the blazing battle against the en- 
emy's fighte r fleet to the fi nal showdown with 
the deadly armored robot, Zaxxon'" chal- 
lenges the skill and imagination of every 
player at every level of skill. 

Imagine yourself the pilot, attacking the 
enemy fortress-climbing, diving, strafing to 
score points and extra fuel. The enemy 
fights back with a barrage of missiles and 
gunfire. Then you face a fleet of enemy fight- 
ers in a gripping dogfight of altitude strategy 
and flying skill. Survive this battle and the 
enemy's fortress, defended with laser bar- 
riers, then you've earned the ultimate chal- 
lenge; a blazing confrontation with ttie pow- 





missile. 

Zaxxon '" is the one game that you must see 
to believe. You have to play it to feel its im- 
pact. If you're ready to face the challenge, 
check with your local software dealer or 
send check or money order with S2.00 post- 
age/handling. California residents add 
QV2% sales tax. Available on cassette or 
diskette. Suggested retail price S39.95. 

Available in January on Atari ■, February on 
Apple" and Radio Shack-' Color, and April 
on Tl 99/4A"' and NEC 6000 '■. 



Vi=i/ COMPUTER SOFTWARE 
9421 Winnetka Avenue 
■ Chatswofth.CA 91311 
(213)701-5161 
sl982Datasoft*lnc. 

Datasott' IS a registered Iradetnark of OalasoH Inc ' 



Sega' and Zaxjon'" are tegislered trademarks ol Saga Enterprises In 



210 FOR X=lTON:READN?(X):I.(X)=LKN(N$(X))sN TION 

EXT: PRINT" (clear)" 100 OPEN #5,9,0, "E:" 

220 F0RI = lTO22 110 DIM OUTPUT* ( 1 ), A« ( 1 9 ) 

230 PRINT"fREV} ":NEXT 120 POSITION 2,0:FOR 1=1 TO 36:PRINT 

'■*" ; : NEXT I 

240 FOR Z=1TOK:E=0:GOSUB710:REM PUT IN VE 140 FOR Y= 1 TO 23: FOR X=2 TO 37 STEP 

RTICAL WORDS 35:POSITION X,Y:PRINT "*";:NEXT 

250 GOSUB 690:REH GET A RANDOM POSITION X:NEXT Y 

260 FORX=0TOL(R)+1 :B=PEEK(P+22*X):C=PEEKCP 160 POSITION 2, 23: FOR 1 = 1 TO 36:PRIN 

-H-22*X):D=PEEK(P-H+22*X) T "f^jNEXT I 

270 IFB<>I60ORC<>160ORD<>I60THENX=L(R)+1 :N 165 POKE 752,1 

EXT X:G0T0 250 170 fl=10:FOR F=l TO 1 6 : A=A+ 1 : E= 1 8 : RE 
280 £=E+I AD A« 

290 NEXTX:IFE=L(R)+1THENE=0 180 FOR B=3 TO A:POSITIDN B,19:PRINT 
300 POKE (P), 42: REM PLACE * ON EITHER SIDE ~ " ";A*:NEXT B 

OF WORD 182 FOR C=l TO 10:PDSITION 0,0 

310 FOR X=1T0L(R):P0KE(P+22*X),ASC(MID$(N? 184 FOR D=l TO E:PRINT " £ DOWN> " ; : NEX 

Cr),X,1))-64 T D 

320 NEXT:POKE(P+22*X),42:N$Cr)="0":NEXTZ:R 186 POKE S5 , C A+1 ) : PR I NT A*:POKE 85, ( 

EM GET ANOTHER WORD A+1):PRINT " ":E=E-1:NEXT C:NEXT 

3 30 Z=0 F 

340 Z=Z+2:L=0 190 FOR X=l TO 1000:NEXT X 

350 IF Z>22THEN590 200 A=ia:FDR F=l TO 7:E=18:READ A*:F 
360 FORX=ITON:E=0:G=0 OR B = 3 TO A-1: POSITION B,19:PRIN 

370 IFN?{X)="0"ORL+L(X)+2>2ITHENNEXTX T " ";A*:NEXT B 

380 IFX>NTHEN340 220 FDR C= 1 TO 1 3 -F : POS I T I ON 0,0:FaR 
390 F0RY=IT0L(X) 0=1 TO E:PRINT " C DOWN > " ; : NE X T D 

400 B=PEEK(7680+L+Y+22*Z) 230 POKE a5,A;PRINT A*:PDKE 35,A:PRI 
410 C=ASCCMID5(N$(X),Y,1))-64 NT " ":E = E-1:NEXT C:POKE SL + 37a, 

420 IFB=160ORB=CTHENE=E+1 47: NEXT F 

430 IFB=160THENG=G+1 240 FOR X=l TO 19:READ A*: IF A*="0" 
440 IF E=0THEN480 then 270 

430 IFB=320RB=420RG=L(X)THENL=L+I :GOTO360 250 POSITION X+S,13:PRINT AS 

460 IF E=L{X)THEN500 260 GOTO 280 

470 NEXTY 270 POSITION X+B,13:PRINT " " 

480 NEXTX 280 FOR Y= 1 TO 100: NEXT Y:NEXT X 

490 L=L+1 :GOTO360 290 REM FOR 1 = 1 TO 2000: NEXT I 

500 B=PEEK(7680+L.+L(X) + I + 22*Z) 295 GRAPHICS 0:POKE 752,0 

510 IFB=42ORB=160THEN530 300 POSITION 3,3:PRINT "HOW MANY WOR 
520 L=L+1 :NEXTX:GOTO340 DS ( MA X : 1 1 > " ; : I NPUT N 

530 B=PEEK(7680+L+22*Z) 310 POSITION 3,7:PRINT "HOW MANY VER 
540 IF B=160ORB=42THEN560 TICAL WORDS <15-25 WORKS WELD" 

550 L=L+1 :NEXTX:GOTO340 ;; INPUT K 

560 POKE(7680+L+22*Z) ,42 320 POSITION 3,11:PRINT "RESULTS ON 
570 F0RL1 = 1T0L(X) : POKEC7680+L+L1+22*Z) , ASC SCREEN OR PR I NTER " : PR I NT " (S OR 

(MID$ (N$ (X) ,L1, 1) )-64 P)";: INPUT OUTPUT* 

580 NEXTL1:POKE(7680+L+L1 + 22*Z) ,42:N$(X) = " 325 POSITION ll,17:POKE 752,1:PRINT 

0":L=L+L1:GOTO360 "...PLEASE WAIT..." 

590 IF S? = "P"THEN610 330 DIM N* ( 20* ( N+ 1 ) ) , L ( N ) , T* ( 20 ) : REM 
600 GOTO 850 ALLOWS WORD LENGTHS TO 20 CHARA 

610 OPEN4,4 CTERS 



340 FOR X=l TO N:READ T« : L ( X ) =LEN ( T« 



620 F0RX=1T023:C5=" :F 

0RY=1T022:IFY>1 THEN C5 = "" ^' '" ') Tn* < X i20+ 1 '.'x'* 20 + L i X 5 7 = T* : NEX T X 
630 A=PEEKC7657+Y+22*X):IFA=320RA=420RA=16 : GRAPHICS 

0THEtiA=166 350 PQKE 752,1: FDR 1=0 TO 22: FDR J = 
640 B?=CHR?CA+64) jq 38: POSITION J, 1: PRINT " ■" ; : N 

650 PRINT#4,C$+B$;:IFY=22THENPRINT#4 ^^^ J:NEXT I 

660 NEXTY, X:CL0SE4: GOTO 850 3^^ PPP ^=1 TO K:E = 

670 GET F$:IF F$="" THEN 670 ^j^ R= 1 NT ( RND ( ) «N ) + 1 : X F N*(R*20 + 1,R 
680 PRINT" [CLEAR)": END t20+l)="0" THEN 410 

690 U=INT(RNDtl)*506) 420 U= I NT ( RND ( ) «960 > 

700 P=7680+U: RETURN 430 P = SL4-U 

710 R=INT(RND(1)*N) + 1:IFN$(R) = "0"THEN710 ^^^ ^^^^ ^=0 TO L ( R ) ^^ I : B = PEEK < P + 40* X ) 
720 RETURN : C=PEEK CP-1+40*X ) : D = PEEK <P+l+40* 

850 PRINT" {rev1done{off3-hit IrevJcIoff} T ^, 

CONT"; 450 IF B<>12a OR C<>12a OR DO 129 TH 
860 GET F?:IF F$ = "" THEN EN x = L ( R ) +1 : NEXT X:GOTO 420 

870 PRINT" {clear}": END 460 E = E+1 

880 REM BE SURE TO INCLUDE LINES 2000-2110 ^^^ NEXT X:IF E = L(R)+1 THEN E = 

Program 3: Atari Version 480 POKE P,10:REM PLACE « ON EITHER 
70 OPEN #1.4.0,"K:" SIDE OF WORD 

B0 SL = PEEK (88) +256»PEEK (89) : REM DETE 485 T t = N* ( R * 20+ 1 , R *20 + L ( R ) ) 

RMINE SCREEN MEMORY STARTING LDCA 'V^B FOR X=l TO L(R):POKE (P + 40*X),AS 

&?, COMPUTl! May 1983 



IF YOUIAKED donkey KONG, 
YOU'LL LOVE JU 



m 








0^ 



„> 


lYT 


^^k 


M 


" 1 

1 


'■^^ i 


^ 











;/,;( 



v«. 



^ if you liked jumping overbarpels andjcjimbing 
'^ladders to save damsels in distress, you'll love 
the blazing excitement ofJUMPMAN. Your 
incredible speed and jet boosters let you leap 
from girder to girder, scale laddersrand ropes 
to disarm the bombs planted in Jupiter Head- 
quarters. Bupt's not easy and there are thirty 
levels of diffimjity. You 'II have to dodge missiles, 
killer robots/flying saucers, crumbling girders r : .. 
and vanish^ig escape routes. In the heat of 
battle, JUMPMAN must keep a cool head. ^"~ 






'■'.■ >.rt;vv -.'t^ 



*■«&=. 






^ 



Award-Winnm 
Computer q^m^M 



y^i^pyx, 1043I^^ICo^1Sunnyvale. California 9401 




DONKEY KONQis 



I Nintendo of America, Inc. 



C tT* ( X , X) > -32 250 FOR 1=2 TO 23 STEP 21 

500 NEXT X:POKE < P + 40 * X ) , 1 : N4 ( R *2ei+ 260 CALL HCHAR ( 1 , 2 . 4 2 . 30 ) 

1 , R*20+l ) ="0" : NEXT 7 ; REM 6ET AND 270 NEXT I 

THER WORD 730 FDR 1=2 TO 31 STEP 29 

510 Z = 290 CALL VCHAR < 2 . I . 42 , 2 1 ) 

520 Z=Z+2:L=0 300 NEXT I 

530 IF Z>23 THEN B00 310 H*= " CROSSWORD PUZZLE" 

540 FOR X=l TO N:E=0:B=0 320 ROW=10 

550 IF N« ( X*20-H , X*20-H ) ="0" OR L+L( 330 COL = 8 

X)+2>39 THEN NEXT X 340 QOSUB 120 

560 IF X>N THEN 520 350 V«="PROGRAM" 

580 T*=N« < X*20+l , X«20+L (X) ) 360 RaW=7 

590 FOR Y=l TO L(X) 370 C0L=15 

600 E( = PEEK (SL + L+Y + 40J2) 380 GOSUB 180 

610 C=ASC (T* <Y, Y> ) -32 390 H«="by WILLIAM LDERCHER" 

620 IF B=128 OR B=C THEN E=E+1 400 R0W=14 

630 IF B=128 THEN G=G+1 410 CDL=5 

640 IF E=0 THEN 690 420 6DSUB 120 

650 IF B=0 OR B=10 OR G=L ( X ) THEN L= 43P FDR DELfiY=l TO 750 

L+l;GOTD 540 440 NEXT DELAY 

670 IF E=L(X) THEN 710 450 CALL CLEAR 

680 NEXT Y 460 INPUT "HOW MANY WORDS (MAX: 113) 

690 NEXT X ?":N 

700 L=L+1;G0T0 540 470 PRINT 

710 B=PEEK fSL+L+L (X> +i+40*Z ) 480 PRINT 

720 IF B=12S DR B=10 THEN 740 490 PRINT "HOW MANY VERTICAL WORDS" 

730 L=L+1:NEXT X:GDTO 520 500 INPUT "(15-20 WORKS WELL1?":K 

740 B=PEEK (SL+L+40*Z ) 510 PRINT 

750 IF B=12B OR B= i THEN 770 520 PRINT 

760 L=L+1;NEXT XlGDTO 520 530 PRINT "RESULTS ON SCREEN OR PRI 

770 POKE (SL+L+40»Z) , 10 NTER" 

775 T* = N* ( X*20+-l , X*20 + L ( X ) ) 540 INPUT "(S OR P)-^":S1 
780 FOR Ll = l TO L(X):P0H:E (SL + L + Ll+4 

0«Z) ,ASC;TS(L1,L1) >-32 
790 NEXT LljPOKE ( SL + L + L 1 •*-40 * Z ) , 1 : N 

«(X»20+1.X*20+1>="0":L=L+L1:GDTO 
5 40 
800 IF DUTPUTt="P" THEN S20 
810 GOTO 1060 



550 DIM N* ( 1 1 ) , L ( 1 I > 

560 FDR X=l TO N 

570 READ N* ( X ) 

580 L ( X ) =LEN (N* (X ) ) 

590 NEXT X 





830 FOR LINE=1 TO 23 

840 INPUT tt5.L« 

950 LPRINT , , , L* 

860 NEXT LINE 

B70 GOTO 1060 



630 CALL VCHAR ( 1 , 32, 31 , 24) 

640 CALL HCHAR (24 , 1 . 31 , 31 > 

650 FOR Z=l TO K 

660 E=0 

670 R= INT (RND*N) + 1 

680 IF Nt(R)="i"l" TtlFN 67'^ 

880 DATA C,R,0,S,S,W.O,R,D, ,P,U,Z.Z J^J ROW= ^NT ( RND * 23 )^^ 

''-'^ ^ , ^ „ „ 700 COL=INT <RND*29> +3 



890 DATA P, R, D, G, R, A, M 

900 DATA B. Y. 0. W, I , L. L , I . A, M. 0, L . 0. E 



7 10 FLAG=0 

720 FOR X=0 TO L(R)+1 

730 IF R0W+X>23 THEN 670 

740 CALL GCHAR (ROW+X, COL, B) 

^^„^,,,^^ , ^,.^ 750 CALL GCHAR (ROW + X . COL-1 . C ) 

1070 GET «5'D:GRAPHICS 0:END GCHAR ( ROW ^ X , COL + 1 . D ) 

1080 REM BE SURE TO INCLUDE LINES 20 ^^^ ^^ ( B=32 ) * ( C=32 ) * ( D=32 ) THEN 310 



, R, C, H, E, R 
1060 PRINT "f4 SPACESD DONE-HI T 

O CONTINUE"; 



00-21 10 

Program 4: ti-99/4A version 



730 FLAG=1 

790 X=L(R)+1 

800 SOTO 820 

100 GOTO 230 8 10 E=E+1 

110 REM HORIZONTAL PRINTER 820 NEXT X 

120 FOR 1=1 TO LEN<H*) 030 IF FLAG=1 THEN 690 

130 LETTER = ASC <SEB* (H$, I . 1 ) ) 840 IF E - ;- L C R > + 1 THEN 960 

140 CALL HCHAR<ROW. COL 1 I , LETTER) 850 E = 

150 NEXT I S60 CALL HCH AR ( ROW , COL . 42 ) 

160 RETURN 870 FOR X=l TO L(R) 

170 REM VERTICAL PRINTER 880 CALL HCH AR ( ROW+ X . COL , ASC ( SEGt ( N 

190 FOR 1=1 TO LEN(V*) $(R),X,1>)) 

190 LETTER=ASC f SE6« (Vt. I , I ) 1 890 NEXT X 

200 CALL VCHAR(ROW+I , COL. LETTER) 900 CALL HCHAR ( ROW+ X , COL , 42 ) 

•110 NEXT I ''l^ N«(R>="0" 

220 RETURN 920 NEXT Z 

230 RANDOMIZE ''-^ ^ = ^ 

240 CALL CLEAR "?''^ Z = Z+2 

84 COMPUni May 1983 






An Ocean Apart 



•J^*r.-'j, 





Pacific Co£ist SoftwareXoipora 

The leading manufacturer of Commodore 64' software 

• Word Processing 

• Data Base Systems -•'wa 

• Home and Business Accounting 

• Educational 

• Entertainment u— i 

• PCS/6480 Column Board . ' 
—which contains resident executive driver that 
interfaces word processing, data base and spread 
sheet program modules. 




FOR FURTHER INFORMATtON CONTACT THE 
DISTRIBUTOR NEAREST YOU TODAYS 

MIDWEST -{612) 665-6724 '=^^"'"" 
EAST CQ-^ST - (215) 87;i-0474 
SOUTHEAST - (615) 690-6966 

CANADA -(416) 366-6192 

UNITED KINGDOM - 01-900-0999, TELEX 28604 



Dealer Inquiries Encouraged ^ 



^^^^ PACinC COAST SOFTWARE CORPORA1 

3220 South Brea Can\'on Road, Diamond Bar. CaJifornia 91765 

(71-4)594-8210 

Commodore 64 is a registered trademark of Commodore Electronics. Ltd. 



950 
960 
970 
9B0 
990 
1 000 

1010 
1020 
1030 
1040 
1050 
1060 
1070 
1080 
1090 



M=l 

IF Z>23 THEN 

FOR X=l TO N 

E = 

G = 

IF <N* < X ) 

THEN 1260 

FOR Y=I TO L(X) 

CALL 6CHAR ( Z , M-f-Y 

C=ASC (SEG« (N« ( X ) 







0" ) + ( -:m + l < X ) +2) 



;i ) 



100 
1 1 

120 

130 

140 

150 

160 

1 170 

1 180 

1 190 

1200 

1210 

1220 

1230 

1240 

1250 

1260 

1270 

1280 

1290 

1300 

1310 

1320 
1330 
1340 
1350 
1360 
1 370 
1330 
1390 
1400 
1410 
1 420 
1430 
1440 
1450 
1460 
1470 
1480 
1490 
1500 
1510 
1520 
1530 
1540 
1550 
1560 



Y, 



"*"; ! NEXT X,Y 
130 HTAB 2: VTAB 24; FOR I = 1 TO 38: PRINT 

"*"; : NEXT I 
140 A = 11: FOR F = 1 TO 16j A = A + 1 : E 

= 18: READ A* 
150 FOR B = 3 TO A: VTAB 19: HTAB Bs PRINT 

'■ "A»: NEXT B 
160 FOR C = 1 TO 10: HTAB 1 
170 FOR D = 1 TO E: VTAB D + 1: NEXT D 



1 ) ) 



IF CB 
E = E+-1 
IF B< 
G = G + 1 
IF E=0 THEN 



32) * ( B< >C) THEN 1060 



THEN 1080 



1: PRINT 



1 140 



31 ) * (B< >42 J t (G< >L ( X ) ) TH 



1 190 



IF (B 
EN 1120 
ri = M+l 
60T0 970 

IF E=L<X)THEN 
NEXT y 
LDC = 2 
GOTO 1260 
LOC = 

ri=M + l 

GOTO 970 

CALL GCHAR ( Z , M+L ( X ) +1 

IF (E=42> + (B=32) THEN 

M = M+1 

GOTO 1260 

CALL GCHAR(Z,M,B) 

IF <B=32) + <B=42) THEN 

M = M + 1 

NEXT X 

IF L0C = 2 THEN 1 160 

GOTO 940 

CALL HCHAR ( Z , M, 42) 

FOR L 1 = 1 TO L (it) 

CALL HCHAR(Z,M+L1 

X ) , L 1 , 1 ) ) ) 

NEXT LI 

CALL HCHAR £Z 

N* ( X ) ="0" 

M=M+L1 

GOTO 970 

IF S*="P" THEN 1460 

Ht="DONE-HIT c TO 

R0W=24 

C0L = 4 

GOSUB 120 

CALL KEY(3,F,ST) 

IF ST=0 THEN 1420 

CALL CLEAR 

END 

OPEN #1 : "RS232" 

FOR ROW=l TO 23 

FOR C0L=2 TO 31 

CALL 6CHAR (ROW, COL, X) 

PRINT #1 :CHR« (X ) ; 

NEXT COL 

PRINT *»1:CHR*(13> 

NEXT ROW 

CLOSE #1 

GOTO 1380 

REM BE SURE TO INCLUDE 

00-2 1 10 



, B) 
1230 



1 290 



9: PRINT A* 

9: PRINT " " 
NEXT Y: NEXT X 
I NEXT : HOME 



ASC (SE6* CN* ( 



M + Ll 



42) 


360 




370 




380 




390 





400 


CONTINUE" 


410 



1B0 HTAB A + 1: PRINT A$: HTAB A 

" ":E = E - 1: NEXT C: NEXT F 
190 FDR X = 1 TO 2000: NEXT 
200 A = 19: FOR F = 1 TO 7:E = 18: READ 

A*: FOR B = 3 TO A - 1: VTAB 19: HTAB 

B; PRINT " "At: NEXT B 
210 VTAB 19: PRINT " « " 
220 FOR C = 1 TO 13 - F; HTAB 1: FOR D 

= 1 TO E: VTAB D + 1: NEXT D 
230 HTAB A: PRINT At: HTAB A: PRINT " 

":E = E - 1: NEXT C: POKE 1210,143 

: NEXT F 
240 FOR X = 1 TO 19: READ At: IF At = 

"0" THEN 270 
250 VTAB 14: HTAB X + 
260 GOTO 280 
270 VTAB 14: HTAB X -^ 
2B0 FOR Y = 1 TO 200: 
290 FOR I = 1 TO 2000 
300 VTAB 4: INPUT "HOW MANY WORDS (MAX 

: 110)7";N 
310 VTAB 7: INPUT "HOW MANY VERTICAL W 

ORDS < 15-25 WORKS WELL)?";K 
320 VTAB 10: INPUT "RESULTS ON SCREEN 

OR PRINTER (S OR P)?";S* 
330 DIM Nt<N) ,L(N) 
340 FDR X = 1 TO N: READ Nt(X):L(X) = 

LEN <Nt(X)): NEXT X: HOME 
350 INVERSE : FOR I = 1 TO 23: FOR 3 = 

1 TO 39: HTAB J: VTAB I: PRINT " " 

;: NEXT J: NEXT I: NORMAL 

DIM XL7.<23): FOR I = TO 7 
XL'/. (I) = 1024 + 128 * I 
XL'/. (I + 8) = 1064 + 128 * I 
XL7.<I + 16) = 1104 + 128 « I: NEXT I 

FDR Z = 1 TO K:E = 
R = INT ( RND (1) t N) 

R) = "0" THEN 410 
420 ROW = INT ( RND <1) « : 

( RND (1) « 40) 
430 F = XL7. (ROW) + COL 
440 FOR X = TO L(R) + 1:B = PEEK (X 

L7. CROW + X) + CDL):C = PEEK (XLV. ( 

ROW + X) + COL - 1):D = PEEK (XL*/. 

(ROW + X) + COL + 1) 
450 IF B < > 32 OR C < > 32 OR D < ':■ 

32 THEN X = L(R> + 1: NEXT X: GOTO 

420 
460 E = E + 1 
470 NEXT X: IF E = L<R) + 1 THEN E = 



IF Ntt 



13) sCOL = INT 



LINES 20 



Program 5: Apple version 



100 TEXT : HOME 
110 HTAB 2: FOR X = 

; : NEXT X 
120 VTAB 1: FOR Y = 
TO 39 STEP 37; 



480 



490 



500 



1 TO 


38: PRINT 


11 4 It 


510 
520 


2 TO 


23: FOR X 


= 2 


530 


VTAB 


Y: HTAB X: 


PRINT 


540 



POKE P,170; REM PLACE * ON EITHER 
SIDE OF WORD . 

FOR X = 1 TO L(R): POKE (XL7. (ROW + 

X) + COL), ASC ( MID* (Nt(R>,X,l)) 
+ 64 

NEXT : POKE (XL7.(RDW + 

70:Nt(R) = "0": NEXT Z 

MOTHER WORD 
Z = 
Z = Z + 2:L = 

IF Z > 23 THEN 770 

FOR X = 1 TO N:E = 0:B 



X) + COL) ,1 
REM GET A 







96 COMPUTE! May1983 



O^^^-i;..';:.^^^;: 



''r-='^^*SA 




ia^msesmsgis 



minin*DflTflj SOFTWARE 



FORTHE COMMODORE 64; PET*ANDVIC20' 



mm^. 



mm. 



i^m 



TAKE AN EXCITING TRIP 
DOWN AVENUES OF 
ADVENTURE WITH: 

• Pakacuda* 

• Escape* 

• Logger* 
- Ape Craze* ""'" 

. Centropods^ 
Supercuda* 
Street Maze ^ 
Caves of Annod 
Capture the Beast 
Market 






^^•J 



m 



m 



THROUGH TRAILS OF 
CREATIVITY WITH: 

• Sketch and Paint 
. • Music Mentor 





f:--!>;r.::-.1 i^ 



■ U^^i^m^J^l 



,i^,.i:4t-;V--'4S;j 



niB:^. 



sfe; 



^::^>\ 



m. 



I 



ALONG THE PATH TO 
KNOWLEDGE WITH: 

Wordspot 

■ Math Tutor Series 
Alphabet Tutor 
Geography Smash 

■ Gotcha Math 
English Invaders 



-Vi^'f -■ i^Ji'.^-'^ r 



mm 



12345 _ 

9x9=81 8 




Math Invaders Series 

ASK FOR COMM*DATA 

COMPUTER HOUSE SOFTWARE 

AT YOUR LOCAL DEALER. 



sHJ2a^^-- ■'•■^•' 



'.& '-li?,??!'^'. ''■"■V>>*ilv ■ 



^fM 



ARRANGE PASSAGE TODAY! 



Or Send for FREE Complete Catalog: 

COMM*DATA COMPUTER HOUSE 

320 Summit Avenue 

IMilford Michigan 48042 
(313)685-0113 
Dealer Inquiries Welcome, 






Commodore 64, PET, and ViC 20 are Registered Trademarks of Commodore Business Machines, Ina 
'High Res Full Machine Code Arcade Style Games. 



550 

560 
570 
580 
5V0 
600 
610 
620 
630 

640 
650 
660 
670 
680 
690 
700 
710 
720 
730 
740 
750 



760 



IF N*(X) = "0" 0RL+L(X)+2>3 
9 THEN NEXT X 
IF X > N THEN 520 
FOR Y = 1 TO L<X) 
B = PEEK (XL7. (Z) + L + Y) 
C = ASC < MID* (N*(X),Y,1)) + 64 
IF B = 32 OR B = C THEN E = E + 1 
IF B = 32 THEN G = 6 + 1 
IF E = THEN 660 

IF B = 160 OR B = 170 OR G = L(X)THEN 
L = L + 1: GOTO 540 
IF E = LCX) THEN 680 
NEXT Y 
NEXT X 
L = L + 1: GOTO 540 
B = PEEK (XL7.<Z) + L + L(X) +1) 

IF B = 170 OR B = 32 THEN 710 
L = L + 1: NEXT X: GOTO 520 
B = PEEK (XL7. (2) + L5 

IF B = 32 OR B = 170 THEN 740 
L = L + 1: NEXT X: GOTO 520 
POKE (XL7. (Z) + L) , 170 
FOR LI = 1 TO LCX): POKE (XL7. CZ) + 
L + LI), flSC ( MID* (N»(X) ,L1, 1) ) + 
64 

NEXT LI: POKE (XL/. (Z) + L + LI), 17 
0:N*(X) = "0":L = L + LI: GOTO 540 



770 IF S$ = "P" THEN 790 

780 GOTO 1030 

790 PR# 1: PRINT CHR* (9) "255N" 

800 FOR X = TO 23:B = 20: FDR Y = TO 

39: IF Y > THEN B = 
810 A = PEEK (XL7. (X) + Y) : IF A = 160 OR 

A = 170 OR A = 32 THEN A = 237 
820 B% = CNR* (A - 64) 
830 PRINT SPC( B)B*;: IF Y = 39 THEN 

PRINT 
840 NEXT Y: NEXT X: PR# 0: PRINT : GOTO 

1030 
850 DATA C,R,0,S,S,W,D,R,D, ,P,U,Z,Z, 

L,E 
860 DATA P,R,0,G,R,A,M 
870 DATA B,Y,0,W, I,L,L, I,A,M,0,L,O,E, 

1030 PRINT " DONE-HIT 'C TO CO 

NTINUE"; 
1040 GET F*: HOME : END 
1050 REM BE SURE TO INCLUDE LINES 200 

0-2110 



Program 6: data statements To Be Added 
To Eacti Version 

2000 REM NUMBER OF WORDS = 110 

2010 DATA ASSENT, ASTERISK, BAG, BITE, BOOT, BUF 

PER , BULK , CELL , CEMENT , CLAI M 
2020 DATA CAT, PERSON, CHAIR, CAN, PAPER, NUMBER 

, OWL , PLATE , CIRCLE , PENCI L , LIGHT 
2030 DATA VICTORY, LETTER, DOORWAY, SAIL, LOVE, 

MOTHER, SON, DAUGHTER, CAR, HAPPY, WIN 

G 
2040 DATA TOMORROW, TRUCK, BUSY, FEELINGS, SUNS 

ET , BRIGHT , SUMMER, PAINT , MOVI E , CHES 

S 
2050 DATA TENNIS, NET, BALL, RACKET, COURT, PLAY 

ER, OFFICIAL, BOOTH , SCORE , POINT , THE 

2060 DATA PINS, RACK, NEEDLES, CHAIR, STOOL, CEI 
■ LING, SOUND, PROFESSOR, TEACHER,.SCHO 

OL 
2070 DATA COMPUTE, KEYBOARD, BYTE, BIT, STOP, GO 



, END, MICROCOMPUTER, SOLUTION, FINE 
2080 DATA ROOM, SAD, JOY, PEACE, BOATING, RIVER, 

LAKE , SWIMMING , BOARD .GRASS , TOIL, TR 

EE 
2090 DATA EGG, EXHALE,GLORY, ILLUSIVE, IMMORAL 

, DESK , LET , LEVEL , MYSTERY , MYSELF, RU 

N 
2100 DATA NAIL, TWO, MUTE, OFF, OFFER, PALM, PANE 

L , PENNY , CENT , DOLLAR, POLL , POLICE , H 

ELP 
2110 DATA RENDER (pi 



VIC-20 / CBM 64 

*The Accountant $29.95 

(C/L, B'S, pan 

*Accounte Receivable/Payable $21.95 

*Tapeworm $1 2.95 

(Keep track of your records and tapes) 

Sigma Stat $19.95 

(A sophisticated stat prog, for VIC + Ski 

Snakman $15.95 

(Just like your favorite arcade game VIC onlv) 
•Available for VIC & CBM 64 

EMBASSY COMPUTER PRODUCTS 

P.O. BOX as, Little Neck. NY. 11363 
Check or money order. No COD's. h.y. Residents add 8.25% 
sales tax. Add. S1 .50 for postage and handling. 
DEALER INQUIRIES INVITED — PROGRAMMERS WANTED 



LUNA 



SOFTWARE 



LUNA SOFTWARE has 
now available for im- 
mediate delivery a 
diverse line of software 

for the Commodore 
64™ and Vic 20™. Call 
us today for a com- 
plete look at our pro- 
grams. 




DISKETTCS & CASSEnES f=OR THE 
COMMODORE 64" AND VIC 20™. 



P.O.Box 26922 • San Jose. CA 95159-6922 • (4081378-7793 



aa COMPUTE May 1983 



T^U^ivaUnelec»9K0tUiUc^iti^KA 



s^»!r^ 



c* 



I^^ 






5$r:^-^^" 



>^^' 



.wt> 



RTC 



Call or write 
payments 
by VISA, 
MASTERCARD 
or BANK 
TRANSFER. 
Mailorders 
also by 
certified 
checit, etc. 



Many more 64s 



^^ 



T 



^M 



I 



'''■'.'■'.'.'TO' 



sw 



Spooling 


to 


Printer 



10610 BAYVIEW (Bayview Plaza) 
RICHMOND HILL, ONTARIO, CANADA L4C 3N8 
(416)884-4165 

C64--LINK 

The Smart 64 



M 



So 



^o. 



ap-J 



Vx^^hi 



5o 



RTC 



VL16 



(future) 

Cartridge 

Mother Board 



CP/M 




Switch 




Serial 

Audio I/O 
RF Video Port 




IEEE Dislts 

(2031) (4040) 

(8050) (8250) 

(9090) 



IEEE Printers 

(4022) (8023) 

(8300) 

etc. 



1541 Drive 

And 

1525 Printer 

or 1515 Printer 



or VL3 Cable 


to Parallel 


Printer 



lEEEtoParallel 
Interface 

Parallel 
Devices 



IEEE to Serial 

Interface 

True Serial 

Devices 



or VL4 Cable 

to Standard 

M odem 



POWER® 


And 


PAL® 



Give These Expanded aM^ 

Capabilities To Your 64 ^ 

ir The atiility to transfer data from any type of device to another (IEEE, Serial, 
Parallel) 

■*■ BASIC 4.0 which allows you to run mors PET BASIC programs and gives you 

extended disk and I/O commands. 

■*• The ability to have several 64s on line togettier - sharing common IEEE 
devices such as disks or printers with Spooling Capability, 

ir Bulll-ln machine language monitor 

■*• A built-in terminal or modem program which allows the system to communi- 
cate ttirough a modem to many bulletin board systems and ottier computer 
mainframes. 



-k Compatibility with CP/M, 



Contact your local Commodore Dealer or RTC. 



Copyrights and Trademarks 

C64 Is a copyright of Commodore Business Machines, 
Inc. C64-LINK is a copyright ol F^ichvaie Tele- 
communications. CP/M is a registered trademark of 
Digitai Research. POWER is a trademark of Pro- 
fessional Software. PAL is a copyright of Brad 
Templeton. 



Checkers For 
The Commodore 64 



Lester W, Cain 



Want a rest from those fast-paced arcade games? Try 
playing the sedate, ancient game of checkers against your 
64. Not much frustration, and you're likely to win. 



Move your piece in this game of checkers using 
the four cursor controls. Move the ? cursor to the 
piece to begin with, and press RETURN. This will 
change the cursor to a (fi . Now, move to where 
you want to go, and press RETURN. The computer 
will not allow wrong moves. To cancel your move, 
press the DEL key. If no move is possible, press 
the space bar. 

The computer logic is not tournament quality, 
since the program checks moves only one level 
deep. The King moves lack somewhat, but, other- 
wise, the computer plays a pretty fair game. If 
you don't pay attention, you could get into 
trouble. 

Here's a brief explanation of the program. 

Program Description 

Line Nos. 

30 - 160 Subroutines the computer uses to scan 
its move. It is only one level deep. 
200 - 480 Routine to get the player's move. 
490 - 504 Error checks disallowing invalid moves. 
509 - 580 Update arrays; if a jump was made, 
update score. 

581 - 585 Check for another move; it so, go get 
next move. 

700 - 880 Main scan loop; calls routines at be- 
ginning of program; helps speed up computer 
process. 

1800 - 1820 Print prompts at the bottom of the 
screen. 

1900 - 2160 Print logo and instructions. 
2300 - 2470 Mostly initialization. 
2600 - 2690 Print the game board. 
2700 - 2850 POKE new array to the board after 
every move. 
2870 - 3000 Update the scores. 

90 COMPUIB May 1983 



1 REM — CHECKERS FOR COMMODORE 64 

5 REM — GO INIALIZE AND PRINT BOARD 
10 GOSUB1900:GOTO200 
20 GETA$:IFA$=""THEN20 

2 2 RETURN 

29 REM — COMPUTERS SCAN 

30 U=X+A:V=Y+B:IFU<0ORU>7ORV<0ORV>7THEN80 

40 IFS(U,V)=0THENGOSUB90:GOTO80 

50 IFS(U,V)<0THEN80 

60 U=U+A:V=V+B: :IFU<0ORV<0ORU>7ORV>7THENa 


70 IFS(U,V)=0THENGOSUB90 
80 RETURN 

90 IFV=0ANDS(X,Y)=-lTHENQ=Q+2 
9 5 IFABS(Y-V)=2THENQ=Q+5 
100 IFY=7THENQ=Q-2 
105 IFY=0ORU=7THENQ=Q+1 
110 FORC=-1TO1STEP2:IFU+C<0ORU+C>7ORV+G<0T 

HEN130 
115 IFS(U+C,V+G) <0THENQ=Q+1 :GOTO130 
120 IFU-C<0ORU-C>7ORV-G>7THEN130 
125 IFS ( U+C , V+G ) >0AND ( S ( U-C , V-G ) =0OR ( U-C=X 

ANDV-G=Y) )THENQ=Q-2 
130 NEXTC:IFQ>R(0)THENR(0)=Q:R(1)=X:R(2)=Y 

;R(3)=U:R(4)=V 
135 0=0: RETURN 
150 U=X+A:V=Y+B:IFU<0ORU>7ORV<0ORV>7THEN16 


155 IFS(U,V)=0ANDS(X+A/2,Y+B/2)>0THENGOSUB 

90 
L60 RETURN 

199 REM — PLAYER MAIN LOOP 

200 GOSUB2700 

220 IFC1=12THEND?="I WON TOUGH LUCK":G0T01 

600 
230 IFPl=12THEND?="Y0U WON CONGRATULATIONS 

" :GOTO1600 
240 D$=T$:GOSUB1800:Z=0 

2 50 F1=1:F2=2:LO=SU+(22*CD)+1:L1=0:U1=0 
260 L2=Ll-l!U2=Ul-l;KI=63 
2 70 F=0 :GETF$ : IFF$ <> " "THENF=ASC(F$ ) 
280 PE=PEEK(L0) sPOKELO, KI : FORT=1TO50 :NEXT: 

PC=PEEK(L0+DI) :P0KEL0+DI,1 
290 POKELO, 160:FORT=lTO50:NEXTsPOKELO,PE:P 

OKELO+DI,PC 
300 IF F=157THENIFL1>0THENL1=L1-1 :L0=L0-3 
320 IFF=19THENPRINT" {clear] ":END 
340 IFF=13ORF=141THEN490 ; 

360 IFF=32THEN690 

370 IFF=20ANDZ=0THEN250:REM NULL MOVE 
400 IFF=29THENIFLl<7THENLl=Ll+l:LO=LO+3 
420 IFF=145THENIFU1<7THENU1=U1+1:L0=L0-3*C 

D 
460 IFF=I7THENIFL!1>0THENU1=U1-1:LO=LO+3*CD 



Products for VIC ao^and CBIVier 




SOFTWARE 



Word Wizard For The Vic 20'HFteQuires at least 8K memory expansion) A user 
friendly WORD PROCESSOR with optional joystick control. Easy edit and string 
manipulation commands that iollow the standard format. Full use of function keys for 
ease of use 100% machine language with Delete Word, Search functions and Full 
Justification. Use VIC Graphic printer, or any Centronics compatible printer connected 
to the user port. On Tape (supports disk). S34.95. 

ZAP!-Climbing the corporate ladder could be fun except for all that falling paperwork. 
This Hires arcade type game allows up to^ players to advance through each floor and 
change levels to scale the corporate ranks. Be careful, its easy to be ZAPPED! 
CARTRIDGE for VIC 20.- S29.95 

Bcmtier Word-A unique graphic word game on cartridge that provides the full thrill of 
arcade action. Complete with six modes of play options for added enjoyment Play 
against the computer or another player 6 to adult For VIC 20"'. SZ9,B5. 

Tic Atlack-A fast action arcade game on Cartridge that challenges all of your 
dexterity. Written in machine language for special audio & visual effects. Over 1 00 
levels of play, High score indication. For VIC 20'", SZ9.95 

Dol-A-Lot-As you wander through the maze of life collecting Berries, you happen upon 
some magical fruit Pick one and the treasures appear, but the Meanies are out today 
looking to spoil your fun. Defeat them and continue on to a higher level. An ever 
changing maze plus arcade type animation and sound will provide a real winning 
CARTRIDGE for the VIC 20-', S29.95 

Triple Play-Three word games that are both fun and educationaf The games that are 
included are CROSSWORDS (requires at least 8K expansion). Five complete puzzles 
are included and each puzzle hasup to 1 00 different words, CRYPTO-SOLVE will help 
you solve those cryptic messages found in newspapers, books, and magazines with a 

Dealer and Distributor 

Inquiries Invited 

NOTE, We solicit (larflware and software items for the VIC 20 ' and CBM 64 ' , Royalties, license fees, or outriglit purchases 
can be negotiated, CBM 64- & VIC 20' are Registered Trademarks of Commodore Business Machines Inc, 



systematic computer technique, included are approximately 50 different 
puzzles. You can even enter your own cryptic messages, H lODEN WOflDS will 
display a matrix ol seemingly random letters on the screen. Upon closer inspection, 
you will be able to find many words. Included are approximately 25 different puzzles. 
For VIC 20-, ONLY S29,95 (oralis 

Sketch Pad & Char-Gsn-This hi-resolution drawing program will allow you to draw 
pictures in detail. Use either the keyboard or optional joystick, A fill command will 
allow you to fill a block and other commands allow you to easily clear the screen. You 
can also save and load pictures, Char-Gen is a simple to use custom character 
generator that will allow you to design different characters for each printable key on 
the computer This program is an excellent device to design game creatures, foreign 
alphabets, secret symbols, or other special characters. One set is included and you 
can make and store others quite easily. Both for VIC 20' , ONLY SZ4,95 

HARDWARE 

Ex|iaiid-B-Ram-16K Expansion Board lor the VIC 20' with reset, memory write 
protect lull memory allocation, plus TWO expansion slots. Like having 2 products in 
1, Can even be used as a cartridge development system, SI 19,00 

UniKBrsal Tape Inlerlace & Du[ilKator-(Use on the CBM 64- and VIC 20"). With this 
device, you can easily load save or even duplicate tapes easily with your recorder. 
Full 3 LED indication of Data transfer makes this the most reliable way to Load, Save 
and Duplicate. A complete I/O device with extras, NOTE: Duplication requires 2 
recorders. Only S49.95 

Universal Parallel Inlerlaces-Now you can use most any parallel Centronics'' type 
printer with your VIC 20 '/CBM 64". The inexpensive model will allow you to access 
your printer through the user port This cable and driver is 

only S19.95, Our other model from TYMAC is more 

extensive wild graphic capabilities. Call or inW l^'l^ft 

write for more information and 1 1 %|^h| U 

prices. 



mWTB 



A 



DISTRIBUTING INC. 

1342 B Rt. 23, Butler, NJ 07405 

201-838-9027 



480 GOTO270 

490 POKE19a,0:Rl(Fl)=Ll : :R1(F2)=UI :IFL2=Ll 
ORU2=U1THEN630 

491 1Fs(l1,U1)=0ANDKI=63THEN1040 

492 IFS(Ll,Ul)=40RS(Ll,rjl) <0THEN1040 

493 IFKIO63THEN509 

494 LM=L1-1 :UP=U1 + 1 : IFL1>=XAND!JI <=6THENIFS 
(LM,UP)=0THEN509 

495 LP=Ll+l:IFLl<=6ANDUl<=6THENIFS(LP,UP)= 
0THEN509 

496 IFS(L1,U1)=1THEN499 

497 UM=Ul-l:IFLl>=lANDUl>=lTHEtnFS(LM,UH)= 
0THEN509 

498 IFLl<=6AHDUl>=lTHENrFS(LP,UM)=0THEN509 

499 IFL1>=2ANDU1<=5THENIFS(LM,UP) <0A«DS(L1 
-2,U1+2)=0THEN509 

5 00 IFL1< = 5ANDIJ1< = 5THENIF,S(LP,UP)<0ANDS(L1 
+2,Ul+2 )=0THEN509 

501 IFS(L1,!J1)=1THEN1040 

502 IFL1>=2ANDU1>=2THENIFS(LM,UM) <0ANDS(L1 
-2,U1-2)=0THEN509 

503 IFL1<=5ANDU1>=2THENIFS(LP,UM) <0ANDS(L1 
+2,U1-2)=0THEN509 

504 GOTO104O:REM ERROR 

509 KI=0 :L2=L1 :U2=U1 : IFF1=1THENF1=3 : F2=4:G 

OTO270 
5 30 E=R1(1);H=R1(2):A=R1(3):B=R1(4):IFS(E, 

H)=40RS(A,B) O0THEN1040 
540 IFABS(E-A) >20RABS(H-B) >2THEN1040 
5 60 S(A,B)=S(E,H) : S(E , h) =0 : IFABS ( E-A) <>2TH 

EK660 
5 70 S( (E+A)/2, (H+B)/2)=0:P1=P1+1:F2=4:F1=3 

; Z= 1 : Rl( 1 ) =R1 ( 3 ) : Rl ( 2 ) =Rl ( 4 ) 
575 IFB=7THENSCA,B)=2 

580 GOSUB2700:KI=35 

581 LM=L1-1:UP=U1+1:IFL1>=2ANDUI<=5THENIFS 
(LM,UP)<0ANDS(L1-2,U1+2)=0THEN600 

582 LP=L1+1:IFL1<=5ANDU1<=5THENIFS(LP,UP) < 
0ANDSCL1+2,U1+2)=0THEN600 

583 IFS(L1,UL)=1THEN690 

5 84 UM=U1-1:IFL1>=2ANDU1>=2THENIFS(LM,UM) < 

0ANDS(L1-2,U1-2)=0THEW600 
585 IFL1<=5ANDU1>=2THENIFS(LP,UM) <0ANDS(L1 

+2,U1-2=0THEN600 
5 86 GOTO690 

600 D$=AM$ :GOSUB1800:GOTO270 
630 Al=Rl(Fl):Bl=Rl(F2) 
640 IFS(A1,B1)<>0ORABS(A1-A) <>20RABS ( Bl-B) 

O2THEN1040 
650 E=A:H=B:A=A1:B=B1:GOTO560 
660 IFB=7THENS(A,B)=2 
590 GOSUB2700:REM UPDATE BOARD 

699 REM COMPUTERS TURN 

700 D$=MT?:GOSUB1800 

7 20 RM(0)=INT( .25+(7*RNDC1) )):FORI=1T07 

7 30 RM=INT( .25+(7*RND(l) ) ) : FORJ=0TOI-l : IFR 

M ( J ) =RHTHEHJ=I -I : NEXTJ : GOTO? 30 
7 40 NEXTJ:RM(I)=RM:NEXTI 
7 50 FORXI=0TO7:X=RM(XI) : FORY=0TO7 : IFS ( X, Y) 

>-lTHEN780 
760 IFS(X,Y)=-1THENFORA=-1T01STEP2:B=G:GOS 

UB30:NEXTA 
770 IFS(X,Y)=-2THENF0RA=-1T01STEP2 :F0RB=-1 

TO1STEP2:GOSUB30:NEXTB,A 

7 80 NEXTY.XI 

790 IFR(0)=-99THENP1=12 :GOTO230:REM LOOSE 

800 R(0)=-99 

810 TFR(4l=0THRNS(R(3),R(4) )=-2:GOTO830 

820 S(R(3),R(4))=S(R(1),R(2)) 

8 30 SCR(1),R(2) )=0:IFABS{R(1)-R(3))<>2THEN 

200 
840 sC(r(1)+R(3))/2,(rC2)+R(4))/2)=0:C1=C1 



+ 1 



-1THENB=-2:F0RA 



1930 PRINTRTS; "{REV} 
REV} {OFF}#{REV} 
REV} {OFF}#{REV} 



850 X=rC3):Y=R(4):IFSCx,Y) 

=-2TO2STEP4:GOSUB150 
860 IFSCx,Y)=-2THENFORA=-2T02STEP4:FORB=-2 

TO2STEP4:GOSUB150:NEXTB 
8 70 NEXTA:IFR(0) <> -99THENR( )=-99 :GOTO810 
880 GOTO200 
1040 D?=C? :GOSUB1800:FORT=1TO2000:NEXT:GOTO 

220 
1600 GOSUB1800:FORI=1TO5000:NEXT 
1610 D$="WANT TO PLAY AGAIN" : GOSUB1800 
1620 GOSUB20:IFA5="Y"THENRUK 
1630 PRIMT"THANKS FOR PLAYING": END 
1800 D$=" "+D$+" 

1810 PRINT" IhOMEI "; : F0RI=1T024 : PRINT" {DOWN} 

"; :NEXT 
1820 PRINTRT$;DS; : RETURN 
1900 PRINT" (clear) [03 down) ":RT$="lll 

right} " 

[OFF}f{REV} {OFF}#{ 
(OFFlffREV} {OFF)i{ 
_ {OFF}£[REV} " 
1940 PRINT" {0FF}";RT5;"%{REV} {OFF} {REV} 
{OFF} {REV} [OFF} JREV} {OFF} [REV] 

{off} {rev} {off} {rev} {off}'" 
19 50 printrt5;"{rev}c{off} [rev}hIoff} { 

REV}E{0FF} {REV}C{0FF} {REV}Ki0FF] { 
rev}e{off} {REV}R{0FF} {REV}S" 

1960 print" {0FF}";RTS;"%^{REV} {OFF} {REV} 
{off} {REV} [OFF} {REV} {OFF} {REV} 
{OFF} {REV} {OFF} {REV} {OFF}'" 

1970 PRINTRT$;"{REV} {0FF}${REV} ToFF}${ 
REV} {OFF}${REV} {OFF}${REV} {OFF}${ 
REV) {OFF}${REV} {OFF}${REV} " 

1980 INPUT" {03 down] {03 RIGHTJnAME PLEASE"? 

PL? 
2000 PRINT" {05 down} {03 RIGHt3wANT INSTRUCT 

IONS (y/n) ":GOSUB20 
2020 IFA?<>"Y"THEN 2300 
2030 PRINTCHR5 (14) 
2040 PRINT" {clear} {D0Wn}M0VE FLASHING IrEV} 

7 {off! to man you" 

2050 PRINT"WANT to MOVE, WITH CURSOR 

2060 PRINT"C0NTR0LS.{D0WN}" 

2070 PRINT"PRESS THE CARRIAGE RETURN." 

2080 PRINT"THEN MOVE THE FLASHING {REV}@{ 

off]" 
2090 print"to where you want to go." 

2100 PRINT"PRESS CARRIAGE RETURN .{ DOWN} " 

2110 PRINT" IF YOU HAVE ANOTHER MOVE" 

2120 PRINT"MOVE THIS MAN AND FOLLOW" 

2130 PRINT"WITH A CARRIAGE RETURN .( DOWN? " 

2140 PRINT" IF YOU DO NOT HAVE A MOVE" 

2150 PRINT"PRESS SPACE BAR TO SKIP" 

2160 PRINT"A TURN. {down} ":PRINT"HOME ENDS G 

AME . " 
2 300 SC= 102 7 :CC=80:SU=SC:CD=CC/ 2: 01=542 7 2 
2 340 Z1=87:Z2=102:Z3=81:Z4=32:RC=2:BC=0 
2350 PRINT" [04 DOWN} [03 RIGHT} { REV} ": PL$ ;" [ 

off} do you WISH RED OR BLACK? {OFF} " 
2360 GOSUB20:IFAS<>"R"ANDA$<> "B"THEN2360 
2370 IFA$="B"THEN Zl=102 : Z2=a7 : Z3=32 : Z4=81 : 

RC=0:BC=2 
2 380 A=SU;B=A+{3*CD)+3:DIMS(B,S) ,R1{4) , R(4} 



2 390 DATAl ,4,1,4,0,4,-1,4,4,1,4,0,4,-1,4,-1 

,15 
2 400 FORI=0TO7 : FORJ=0TO7 : READX : IFX=1 5THEN24 

20 
2410 S(I ,J)=X:GOTO2430 
2420 RESTORE: READS (I, J) 
2430 NEXTJ, I 
2440 T?="YOUR TURN":C$="[REV}tRY AGAIN{0FF} 



12 COMPUTI! May 1983 



":MT?="MY TURN":AM$="ANOTHER MOVE 

2450 C6$="C-64": SR$="[2e RIGHT]" 

2460 P0KE53281,15:PRINTCHR$(142) 

2470 G=-l:R(0)=-99 

2600 PRINT" {clear} "; ;RT$=" [03 RIGHT] ": R$=CH 

R?(2a)+" ":B$=CHR$(144)+" 
2610 F0RI=1T04 : FORJ=lT03 : PRINTRT$ ; 
2620 FORL=1T04;PRINT"IrEV) "; R5 ; B$ ; :NEXT:PRI 

NT" (off) ": NEXT 
2630 FORK=lT03 :PRINTRT$; 
2640 F0RL=1T04: PRINT" [rev] ";B?;R?,- iNEXTtPRI 

NT 
2650 NEXTK, I:PRINT"IbLK}"'; 
2660 PRINT" [home] [02 DOWN) " ? SR$ ; C6$ ; " ";PL$ 

: I=SU+3*CD+27 : J=SU+3*CD+32 
2680 POKEI , Z2 ; POKEI+OI , RC : POKEJ , Zl : POKEJ+DI 

,BC 
2690 RETURN 

2699 REM UPDATE BOARD 

2700 Dl=SU+CD+l:FORJ=7TO0STEP-l:FORI=0TO7 

2 710 IFS( I , J )=0THENPOKED1 , 160 : POKEDl+DI , :G 

OTO2850 
2720 IFS(I,J ) =1THENP0KED1 , Zl : POKEDl+DI , RC : G 

OTO2850 
2730 IFSd.J) =-lTHENPOKEDl , Z2 : POKEDl+DI , EC : 

GOTO2850 
2740 IFSd ,J)=2THENP0KED1, Z3: POKEDl+DI, RC:G 

OTO2850 
2750 IFS(I,J) =-2THENP0KEDl , Z4 : POKEDl+DI , EC : 

GOTO2850 
2850 DI=D1+3:NEXT;D1=D1+96:NEXT 
2860 REM — UPDATE SCORE 
2870 PRINT" [home] [05 DOWN] " ; SR$ ; CI ; " ";P1 

3 000 RETURN © 



Your Commodore 64 
Deserves An Assistant 

Data Base Management 
Financial Planning 

Word Processing 




RAINBOW 

COMPUTER 

CORPORATION 



490 Lancaster Avenue 

Frczer, PA 1 9355 (21 5) 296-3474 

Dealer Inquiries Invited 









«MIRMD 

K)R wt ca««o(Wt b'-V 




You 

Can 

COUNT 




A/IC * COMMO[X)RE 64 * PET 



"SPRJTE-AID iCJTili: ediloi wpin lOysncV oolionlDf CSM 64 

■SYNTHY-64 muiic h sound Svnrnesirer Fantasric' fo' C&M-6d 

"SCREEN-GRAPHICS-64 odd giopnicscommanaslo BASIC inci spnr«. ., 
'SKIER-64 f?«cilin3 gomewQit- , 

"Tiny Basic Compiler tor vc. cbmaj oi Per 

'BUDGETEEB Vnual planrj; Iti. Vic. CBM-M oi Pel 

'QUICK CHART pp^'jcntolion cuailmokier for C&M M ai VIC ?0 

"TINY FORTH Panquutj.- i.M CBM (Hoi VIC 20 lAoril 251h| 

VIC GREAT BALLOON RACE otiomer e>ciring gome 

VIC l-CHING ofiHHTal lorlune lellefiaK ejpDQnoeij 

VIC SUPER EXPANDER SCREEN DUMP pr.ms ,om g.apr„o> 

VIC JOYSTICK PAINTER 

VIC OR PET VIGIL tjamui lonBuogewiih 9 games 

VIC OR PET PIPER Ihp mui.c macriitH.' 

VIC HIRES /MULTICOLOR GRAPHICS UTILITIES mc «i,o m.mo-vl. 

VIC GRAPHVICS lupipi lull icieen giopnicj (leq 3lf w W mem e*p I,..., 
VIC TINY PILOT pducnhonal larpgudge 

CRIBBAGE ivic ?o reg imi loi cbmm oi vie JO 

VIC MACHINE LANGUAGE GUIDE iss 9S to...9n| 

PET MACHINE LANGAGE GUIDE iS3«io.e,gni 

PET TINY PASCAL PLUS + (rag 32 k i 

BASIC REFERENCE CARD IS2 oo lon-igni 

Write lor FREE Calalog or for fast service, coll our Order 



S14.9S 
$29.« 
S 24.95 
$14.95 
SI 9.95 
519.95 
SI 4.95 
S19.95 
S 14.95 
S 24.95 
S 14.95 
S 14.95 
S 29.95 
SI 9.95 
S19.95 
S24.95 
S17.95 
SI 4.95 
S 5.95 
S 6.95 
S39.95 
S 1.50 
Line 



I Tffff llll!) 



msm 



Abacus iMh^n. 
Sottwane Spjst 



P.O. Box 7211. Grarvd Rapids, Ml 49510 616/241-5510 



All ^oirwort^ pociipgpicotnp compie'«> wiih msn ucrjonioi manuals Pa^Tagpcind hondi 

sng SI 50 iLf & ond Conodo S3 00 Hiewhf^re f iX dt^ enclose 53 00 per ioflwo'C pachage 

pQvmenT acctjptatjip <n US dollO'S Dy check, mletnafional monev order VISA MC 

■ ACCESS BorciQvCQtd 




GOgBAGE 





Call on Eagle 8 Bit & 16 Bit 
Computers and Software 



NEC 

COMPUTERS 

MMK) CALL 

SOOIA S719.00 

S03I S719.0O 

SOU tS49.D0 

PRINTERS 

8023 $<69.00 

7710/7730 $2299.00 

3510/3530 $1549.00 

KMONITORS 

JB-IZ60 $119.00 

JB-IZOl $149.00 

JC-1JI2 $299.00 

iC-12-I02 $299.00 

JC-1203 $599.00 



PRINTERS 

BIMITH CORONA 

TP I $599.00 

TriclDT Fnd $ 129.00 

C ITOH fEC] 

SlMr»ittniF10-40CPS) $1299.00 

PriiilmulHFlO-SSCPS) $1S49.00 

ProaiUngSlOP $399.00 

Pnwcilcr gSIOS $599.00 

PnmrtlEr 1550 P $769.00 

PnMRttcr 1SS0 5.. $799.00 

OKIDATA 

8JA $429.00 

g3A $659.00 

g4(P>nlM) $1049.00 

84 (S€ilal) $1149.00 

92 $599.00 

91 $999.00 

IDS 

MkxciPibm $649.00 

132 (Fully CanBgund) $1599.00 

m (Fully Cmaflund) $ 1399.00 

Call for oth«f otnliflurkUoiu. 

STAR 

Goslnl 10 $379.00 

Gemini IS ...$489.00 

OAI B YWRITEH 

UnnQivUly $1049.00 

DIABUO 

6M $999.00 

630 $1769.00 



O Tel^deo 

TERIVIINA1.S 

910 $579.00 

912C $499.00 

920C $749.00 

925C $749.00 

950 $950.00 

WYtf WYIOO $749.00 

COMPUTERS 

800A $1299.00 

802 $2649.00 

M2H $4695.00 

806 $4999.00 

816 $8999.00 

803 CALL 

1602/1603 CAU. 

PANASONIC 

JR200U 32K PiT>. Computer . . . $309.00 

KnONITORS 

TR-120. 1 2" Hi™ Gr«»n ... $159.00 

CT-16a. la'DiulMiMkColDr .$299.00 

DT-DIOOO. 10" RGB $349.00 

DT-D1300. 13- HGB/Compodlt . . . $429.00 



SANYO 

MB 1000 CompulfrT $1599.00 

MB I60Add>>nDr>v< $539.00 

5500 Lfttrr Quality IWntfT $699.00 




P^^^^' PC-IBOO 

POCKET CDAAPUTER 
S1BS. 

PC issa...SBa.ao 

CE 150 Printer, PloltCT and 

Cau. Inlarfacc Unit $ 1 72,00 

CE 152 Cau. Recorder $62.00 

CE 155 8K Rao Eipanrion Module. . $94.00 
CE125 Printer/M Jan Cawelle. ..$129.00 

MONITORS 

AMDEK 

300G $159.00 

300A $169.00 

310C $179.00 

310A $169.00 

CokjT I $299.0</ 

ColoTll $599.00 

Color li A $799.00 

Color 111 $349.00 

12AU 12- Green $79.99 

140i 13" Color (Mid Res.) $369.00 

9191U IS'Coifipoiite .$329.00 

TAXAIM 

Coloi CaaniMslli CALL 

RGB 1 $3Z9 .00 

3EENITH 

ZVM 121 $99.00 

ZT-I Tennioal $369.00 

SHARP 

13" Color TV $269.00 

19- Color TV $339.00 

3mput:er m 



Qs. commodore 



VIC BO 
S149 




Motor Mouse $23.00 

Crnllpede $23.00 

Frogae (VIC) $23-00 

Frogse <&4) $23-00 

VIC 20 Duit Cover $9.99 

VIC 1530 Dataxette $69.00 

VIC 1 54 1 (54K Disk Drivet $339.00 

VIC 1525 Graphic Primer $339.00 

VIC 12103K Mem. E<p $32.00 

VIC I1108K Mem. E«p $53.00 

VIC nil I6KMem. Eip $94.00 

VIC 101 1 RS232C Term- bueiface ... $43.00 
VIC 1 1 1 2 IEEE-488 Interface .... $86.00 

VIC 12 U Super Eipander $53.00 

VIC Mother Board $99.00 

HES. UMI, EPYX * Creative Software , 

lor VIC. Now Ii> SlocIlM 

pnOFEeeiONAI. SOFTWARE 

Word Pioceiiins lor VIC 64 $79.95 



HEWLETT 
PACKARD 

m 

41 CV 




HP7S S79S. 

HP 4tC(Ftee ntemory rmidute). ..$149.00 

HP IOC $59.00 

HP 1 IC $72.00 

HP 12C $99.00 

HP I5C $99.00 

HP I6C $99.00 



IViaDEIVIS 

HAYES 

Smart - $219.00 

Smart 1 200 (1200 Baud) $549.00 

Chronograph $199.00 

Miciomodem 100 $309.00 

Miciomodem II $279.00 

Mkromodem II (lelth Term) $299.00 

IM OVATION 

J-Cat $119.00 

C»l $144.00 

D-Cat $ 1 59.00 

103 Smart Cat $189.00 

Apple Cit II $279.00 

103/212 Smart Cat $439.00 

21 2 Apfile Cat II $609.00 

Apple Cat II 2 1 2 Upgrade $309.00 

ANCHOR 

Marl I (HS-232) $79.00 

Mark II (Atari) $79.00 

Mark III (TI-99) $109.00 

Mark IV (CBM/PETl $125.00 

Mark V (OSBORNE) $95.00 

Mark VI (IBM-PC) $ 179.00 

Mark VII (Aulo Aniwir Cal!|....$ll9.a0 

IKS -80 Color Computer $99.00 

9 Volt Power Supply $9.00 



VIC 64 
S399. 



S032 $1039.00 

4032 $749.00 

8096 Upgrade Kit $369.00 

Super Pet $1499.00 

2031 $469.00 

8250 Dbl.Sided Dlik Drive .... S 1 699.00 

D9060 5 Meg. Hard Disk $2399.00 

D906a 7.5 Meg. Hard Dtik $2699.00 

8050 $1299.00 

4040 $969.00 

8300 (Letter Quality) $1549.00 

8023 $599.00 

4022 S399.00 

New Z-Ram, Adda CP/M* & 64K ... $549.00 

Tht Manager $209.00 

Magis ...CAa 

Word Pro 5 PIm $319.00 

Word Pro 4 Plui $299.00 

Word Pro 3 Plus ...$199.00 

The Administrator $379.00 

Info Pro Plui $21 9.00 

Power $79.00 



T1MEX SINCLAIR 
lOOO SS5. 

16K Memory Module $44.95 

Vu-Calc $17,95 

Check Book Manager $13.95 

Tlie Organizer. ,.,....,...... $14.95 

The Budgcier $13.95 

Slock Option $ 1 4.95 

Loan St Mortgage Amortlzcr $1 2.95 

Mlndwore Printer $109.00 

Ortit Software CALL 



NEC 

3SSa PRINTER. .. S1 999 

PEHCOM/TAIMOaiM 

ORIVEB 

SVi- 1 60K Disk Drive $249.00 

SH- 320K Disk Drive $299.00 

AMDEK 

310A Anther Monitor $169.00 

310G $179.00 

Amdlsk (3y<- Drivt) .,, $679,00 

X Y Plotter , , , , $649.00 

Color II $599.00 

SOFTWARE 

I.U.S. Easywrlter II $249.00 

I.O.S. Easyspeller $129.00 

Peach Package (GL/AP/AR) . , . . $4 1 9,00 

PROFESSIONAL 
SOFTWARE 

IBM/PC Word Processing $319.00 

CONTINENTAL 
SOFTWARE 

The Home Accountant Plus .« 119.00 

1st Class Mall/Form Letter $99.00 

SYNAPSE 

File Manager $1 19.00 



ail order eas^ 



506 



IISI PA. CALL f-71 7]3e7-9B75. 477 E.THIRO BT., ^MILLIAMSPOnT. PA. 1 7701 
Nvriik. Kdcpochofi C.O.D. orderiL Pre-patd onlen receive free tUpplng wtthln the UPS Continental United Stalei Delivery Zone with no walling pet lod for cerllflcd checktor monevordcri. Add 
3XtBlirinHB(3.00) riilpfPtagandhBndlingocia]lC.O.D.aDdcT«dltc«rdiorden. Larger shlpmcntft may require addlttorul diarpea. NVandPA rcaldcnUaddtakA la^. Allhcms tubjcct to BvaiUbUlty 
afid ptlcc cikangc WIIH ^i Ww vtock mamifBctiircr'B and third party urftwarc lor mot! all computers on ihe market. Call lixlay for our new catalOB. 




Call on FRANKLIN Computers, 
Disk Drives, Software and 
System Specials. 



MICRO-SCI 

DIBK DRIVES FOR 
APPLE S. FRANKLIN 

A2 \299M 

A40 J349.00 

A70 t459.00 

C2 CoiitToller S79.00 

C47 Confroller $89.00 



VISICORP 

far Appla, IBM S Franklin 

VlsldtK 5189.00 

Vltiftlc 5189.00 

Vislplot 5159.00 

Vlsllerm 589.00 

Visilrend/Plol 5229.00 

VlslSchedule $229.00 

Duktop Ron $189.00 

VincakfAppkll'.CBMJBM] $179.00 

Vislcorp pric« ivr IBM may var^ iligKtly. 

CONTINENTAL 

Home Accnt. (Appli/Anrij $59-00 

TheTaxA4van[B3iKApple,Atari>. . .545.00 
Isl Class Mall/Fomi LtttolApple). . . $79.00 

Tlie Book ol App't $14.95 

Tlur Book ol Alnri $14.95 

The Book of Appiv GrapKics .... .514.95 

SIRIU8 

Free Fall 524.00 

Beet Run $24.00 

Snake Byte 524.00 

Space Eggs 524.00 

Sneakers 524.00 

Bandits 528.00 

BRODERBUND 

Apple Pan(c , . . . - $2 J.OO 

David's Magic $27.00 

Slat Blazer $ 25.00 

Arcade Machine $34 00 

Chopliher $27.00 

Serpentine $27.00 

INFOCOM 

Deadline<AlBri.Appie.lBM) $35.00 

Stat Cross $29.00 

Zotk I, 11. or III $29.00 

MPC 

BubdUk (12SK Ram) $719.00 

AXLON 

Applc/Franklln 1 28K Ram 5399.00 

Apple/Franklin Ram Disk 5999 00 

KRAFT 

Apple Joystick $44 .00 



A ATARI 

1010 Recorder $74.00 

1020 Printer $269.00 

1025 Printer $589.00 

830 Modem $159.00 

820 Printer $259,00 

850 Interface $169.00 

CX40 Joy Sticks (pair) , $ 18.00 

CX414 Bookkeeper Program .. $119.00 

CX419 Bookkeeper Kit $ 195.00 

CX481 Entenainet Package $59 00 

CX482 Educator Package $130.00 

CX4g3 Programmer Package .... $54.00 
CX484 Communicator Package . . . $344.00 
Full Stroke Replacement Keyboard. - 
for Atari 400 $119.00 



48K 



ALIEN 

Atari Voice Bos 51 19.00 

Apple Voice Bos 5 149.00 

MEMORY 

Aslon 32K Ram $89.00 

A«lon 48K Ram . . . $139.00 

Aslon 1 28K Ram $399.00 

1 nlec 32K Board $74.00 

lnlec48K Board $99.00 

I ntec 64K Boardt400 Only) $ 1 49.00 

wica 

Joystick 524.95 

FamousRedBall $26 95 

Apple Trackball $59.00 

Atarl/VIC Trackball $55.00 

Apple Adapter $16.00 



PEfiQOM 



OlSK OI1IVEB 


FOR ATAR 

$399 00 




. .$299.00 




$549.00 


RFD 40- A 1 


. .5349 00 


RFD 40'S2 


5889.00 


RFD 44-Sl 


5679.00 


RFD44-S2 


$1029.00 



RAIMA DISK DniV^a 

Call for pricf and availabiliry on (he 

new Rana Disk Drives for The Apple 

and Franklin Computer Systems. 



FI-C3PPY DISKS 

MAXELL 

MD I (Bosol 10) $32,00 

MD It |Bo« oIlO) $44,00 

FDI(8-t $40,00 

FD 11 (8" DDl 550,00 

VERBATUM 

5W- SS SD $26.00 

5H" DS DD $36.00 

ELEPHANT 

5y."SSSD 519,99 



ATARI aoa 

•16K SI 93. 

3aK SS74'- 

4BK 9B93- 

e4K *359 *• 

*NDn-Atari Ram 
One Year Extended Warranty , , , , $70.00 

ATARI 

Pac-Man $33.00 

Centlpeile $33.00 

Caverns o( Mars 532.00 

Asteroids 529.00 

Missile Command 529.00 

Star Raiders $35 .00 

Galaiian $33.00 

Defender $33.00 

Atat* Visicaic $159.00 

ON-LINE 

Jawbreaker $27.00 

Sohpom $27.00 

Wi rard and the Piinccss $29.00 

The Neil Step $ 34.00 

Mission Asletoid 522.00 

Mouikaltack 531.00 

Frojger 531.00 

Cross Fire (ROM) 536.00 

SYNAPSE 

Rle Manager 800* $69.00 

Chlcken(aemi $34.00 

Picnic PatBnola(Ram) $34.00 

Claim Jumper (Rom) $34.00 

Slime IRoml $34.00 

Shamus(Roml $34.00 

Protector (Rami $34.00 

Dodae Racer|C/Dl $26.00 

Naulilus (C/D) $26.00 

Shadow World (C/D) 526.00 

Survivor (CVDl $26.00 

Drelbs (€/ D| $26,00 

Necromancer (C/D| $26.00 

Pharohs Curse (C/D) $26.00 

Fon Apocolyps* (C/D) $26.00 

Paget $19.00 

Asse mblir $30.00 

Disk Manager $24.00 

DATABOFT 

Pacific Coast Highway $25.00 

Canyon Climber $25 .00 

Tumble Bugs $25.00 

Shooling Arcade 525.00 

Clowns and Balloons $25 .DO 

Graphic Mailer 530.00 

Graphic Generator 513.00 

Micro Painter 525.00 

Test Wliard 579.00 

Spell Wizard $64,00 

Bishop's Square .,.,,.., $25.00 

Sands of Egypt $25.00 

Moon Shuttle $25.00 

Zason , , , , $29.00 




810 Disk Drive $429.00 

Call for Price and 
Availability of the NEW 
e4K ATARI iaao 

APX 

Tent Formatter $18,50 

Family Budgelet $18,50 

Eastern Front $24.00 

Family Cash $18,50 

Jukeboi $13,50 

Downhill $18,50 

Outlaw $18,50 

Holy Grail 524,00 

Player Piano 51 S,SO 

KeylMard Organ S IS.SO 

Number Blast $ 1 3.50 

Frogmaster $16.50 

747 Land Simulator $18.50 

Bumpe r Pool $13,50 

CBS 

K-raiy Shoot Out 532.00 

K-raiy Kritters 532,00 

K-raiy Antics $32.00 

K-star Patrol $32.00 

Stick Stand $5-99 

EPYX 

Crush. Crumble & Chomp $24.00 

Crypt ol the Undead $24.00 

Curse of Ra $16.00 

Datestones 8t Ryn $16,00 

Invasion Orion $19,00 

King Arthur's Heir $24,00 

Horloc's Tower $16,00 

Rescue at Rlgel .524,00 

Ricochet 516,00 

Star Warrior 529,00 

Temple of Asphai 529,00 

Upper Reaches ol Apshal 516,00 

SPINNAKER 
Snooper Troops a 1 ,.,.,,,,..,,,. 534, 00 

Snooper Troops '2 534,00 

Face Maker 524,00 

Story Machljte S24.00 

Delta Drawing $45.00 

Rhymes and Riddles 521.00 

Kinder Comp $2 1 .00 

RDKLAN 

Wliard ol War (Rom) $34.00 

Deluse Invader (Rom) 529,00 

Gorl (HomI $34.00 

FIRBT BTAR 
Astro Chase $25.00 

Bia B 

Miner 49er $35.00 

OAMEBTAR 

Baja Buggies $24.95 

Football $24.95 



computer mail order west: 

BQO-64S-331 1 



Dspt. 
SOB 



IN NV. CALL [70e)C8a-SeS4, P.O. BOX BBSS, BTATELINE, NV. 89449 

ni>l&TiaiUAl.OBCiEnS! All shipments outsidt; conl.nenlal Unilea Slates must tje prepaid by certified cftech only! Include 3%(minimum S3.00) shipping and handling 

lucATlDNAi. □tBcauruTS: Adtiilitjnal discounts are available (rom both Compulei Mail Order locations lo qualified Ertucahonal Inslitulions, 

'D s FPO . Add minimum 55,00 shipping on ail orders CP/M is a registered Ifademark ol Digital Research, Inc 



Why use other computer media 

when you could be using 

ScotcK 

high quality error free media? 

Get Scotch Diskettes Directly From Communications Electronics 

There's a lot of valuable data stored on the diskettes in 
your computer or word processing system. In 1981, a 
diskette manufacturer calculated tliat the "true cost of a 
diskette" was $186.50 after data loading. With inflation, 
the actual cost is well over $200.00 today. That is why you 
don't want to use just any diskette, you want the high 
reliability and quality of Scotch diskettes. You can trust 
Scotch diskettes to deliver that accuracy because each 
diskette is tested before it leaves the factory and is 
certified error-free. That means fewer errors and less lost 
data. Flexible discs may look alike, but they don't all 
perform alike. Scotch diskettes can deliverall the perform- 
ance you'll ever need. The low abrasivity of Scotch 
diskettes, 32% below industry average, saves wear and 
tear on your read/write heads, which means fewer service 
calls due to head problems. Longer and more reliable 
service is you rs when you buy Scotch diskettes since they 
far exceed the industry standard durability tests. Finally, 
your Scotch diskettes are packaged in units of 10, com- 
plete with color-coded labels (except bulk product) to 
make your filing easier. 

Flexible Disc Quantity Discounts Available 

Scotch diskettes are packed 1 discs to a carton and five 
cartons to a case. Please order only in increments of 1 00 
units for quantity 100 pricing. We are also willing to 
accommodate your smaller orders. Quantities less than 
100 units are available in increments of 10 units at a 10% 
surcharge. Quantity discounts are also available. Order 
500 or more discs at the same time and deduct 1 %; 1 ,000 
or more saves you 2%; 2,000 or more saves you 3%; 5,000 
or more saves you 4%; 10,000 or more saves you 5%; 
25,000 or more saves you 6%; 50,000 or more saves you 
7% and 100,000 or more discs earns you an 8% discount 
off our super low quantity 100 price. Almost all Scotch 
diskettes are immediately available from CE. Our ware- 
house facilities are equipped to help us get you the quality 
product you need, when you need it. If you need further 
assistance to find the flexible disc that's right for you, call 
the 3 M/Scotch flexible disc compatibility hotline. Dial toll- 
free 800-328-1 300 and ask for the Data Recording Prod- 
ucts Division. In Minnesota or outside the United States 
dial 61 2-736-9625 between 9 AM to 4 PM Central Time. 



SAVE OH SCOTCH FLEXIBLE DISCS 

Product Dgscription 

8" SSSD IBM Compatible (128 B/S, 26 Sectors) 

S" Same as above, but bulk pack w/o envelope 

S" SSSD Stiugart Compatible, 32 Hard Sector 

8" SSSD OPT BOOO Compatible, Soft Sector 

8" SSDD IBM Compatible (1 28 B/S, 28 Sectors) 

8" DSDD Soft Sector (Unforrratled) 

8" DSDD Soft Sector (256 B/S, 26 Sectors) 

8" DSDD Soft Sector (51 2 B/S, 15 Sectors) 

8" DSDD Soft Sector (1024 B/S, 8 Sectors) 

5'A" SSDD Soft Sector w/Hub Ring 

S'/V 

S'A' 

5'/.' 

5'A 

5V< 

5V4 



Same as above, but bulk pack w/o envelope 744D-0RHB 



SSDD 10 Hard Sector w/Hub Ring 

SSDD 16 Hard Sector w/Hub Ring 

DSDD Soft Sector w/Hub Ring 

DSDD 10 Hard Sector w/Hub Ring 

DSDD 16 Hard Sector w/Hub Ring 
S'A" SSQD Soft Sector w/Hub Ring (96 TPI) 
51/4" DSQD Soft Sector w/Hub Ring (96 TPI) 
SSSD = Single Sided Single Density; SSDD = Single Sided Double Density: 
DSDD = Double Sided Double Density: SSQD = Single Sided Quad Density: 
DSQD = Double Sided Quad Density; TPI = Tracks per inch. 



Parts 


CE quant, 
too price 
per disc (S) 


7400 


2,19 


740-0 B 


1.99 


740-32 


2.19 


740-O-8OOO 


2.89 


741-0 


2.89 


743-0 


3.49 


743-0/256 


3.49 


743-0/51 2 


3.49 


743-0/1 024 


3.49 


744DORH 


2.34 


744D-0RHB 


2.14 


744D-10RH 


2.34 


744D-16RH 


2.34 


745-ORH 


3.09 


745-10RH 


3.09 


745-16RH 


3.09 


746-OHH 


2.99 


747-ORH 


3.99 



Save on Scotch Static Control Floor Mats 

Scotch Velostat Electrically Conductive Floor fvlats, drain static charge 
before it can cause serious problems with computer or word processing 
equipment. Order number 1853 is a black4' x5' size mat with lip. Cost 
is $1 70.00 each. Order number 9453 Is the same mat, but the color is 
earthtone brown, which is designed to blend with any ofJice decor. 
Cost on the 9453 mat is $259.00 each, All Velostat mats come 
complete with 1 5 feet of grou n d cord. All mats are shipped i reig ht col lect. 
Save on Scotch Data Cartridges 

Scotch Data Cartridges are available from CE in three different 
configurations. The DC100A cJata cartridge is a small version of the 
DC300Adata cartridge. The DC1 OOA contains 1 40 feet ofo. 1 50" tape 
in a package measuring 2.4 x3.2 xO.5 inches. Cost is SI 4.00 each. The 
DC300A is a pre-loaded tape cartridge containing 300 feet of one mil 
thick by V," computer tape. The DC300A costs $18.00 each. The 
DC300XL is an extra length data cartridge with 450 feet of tape. It is 
the same size and interchangeable with the DC300A. The DC300XL 
provides a total storage capacity of 34.5 nnillion bits at 1 600 BPI The 
cost of the DC300XL is $22.00 each. 

Scotch Head Cleaning Diskettes- Helps Cut Downtime 

When the read/write heads on information processing machines 
are dirty, that can cause you a lot of grief. Now.. .with Scotch brand 
head cleaning diskettes, you can clean the read/write heads on 
the diskette drives yourself In just 30 secondsand as often as they 
need it. Simply apply (he cleaning solution to the special white 
cleaning fabric. Insert the cleaning diskette into the drive and 
access the heads for 30 seconds. That's all there is to it. Regular 
use of the head cleaning diskettes can save you much of the grief 
caused by dirty heads. We recommend you use them once a 
week, or more often if your system gets heavy use. Each kit 
contains two head cleaning diskettes, and enough solution forSO 
cleanings. Order # 5-CLE is for 5V4" drives and order # 8-CLE Is 
for 8" drives. Only $25.00 each plus $3.00 shipping per kit. 
Buy with Confidence 

To get the fastest delivery from CE of your Scotch computer products, 
send or phone your order directly to our Computer Products Division. 
Be sure to calculate your price using the CE prices in this ad. fvlichigan 
residents please add 4% sales tax or supply your tax I.D. number. 
Written purchase orders are accepted from approved government 
agencies and most well rated firms at a 30% surcharge for net 30 
billing. All sales are subject to availability, acceptance and verification. 
All sales are final. Prices, terms and specifications are subject to 
change without notice. All prices are in U.S. dollars. Out of stock items 
will be placed on backorder automatically unless CE is instructed 
differently. Minimum prepaid order $50.00. fvlinimum purchase order 
$200.00. International orders are invited with a $20.00 surcharge lor 
special handling in addition to shipping charges. All shipments are 
F.O.B. Ann Arbor, fvlichigan. No COD'S please. Non-certified and 
foreign checks require bank clearance. 

For shipping charges add $8.00 per 100 diskettes and/or any 
fraction of 1 00 S-inch diskettes, or $6.00 per 1 00 diskettes and/or any 
fraction of 100 5 W-(r?ch mini-discs. For cleaning kits, add $3,00 per kit. 
For tape data cartridges, add SI. 00 per cartridge, for U,P.S, ground 
shipping and handling in the continental United Slates. 

Mail orders to: Con:imunications Electronics, Box 1002, 
Ann Arbor, Michigan 481 06 U.S.A. If you have a MasterCard 
or Visa card, you may call and place a credit card order. Order 
toll-free in the U.S. Dial 800-521 -441 4. If you are outside the 
U.S. or in Michigan, dial 313-994-4444. Order your Scotch 
computer products from Communications Electronics today. 

Copyright •I 982 Communications Electronics' Ad #120182 



MostcrOord ) 




MEMBER 




OrderToll-Freel 
(800)521-4414 

in Michigan (313) 994-4444 



3M 

Authorized Distributor 




COMMUNICATIONS 
ELECTRONICS" 

Computer Products Division 

854 Phoenix D Box 1 002 D Ann Arbor, Michigan 481 06 U.S. A 

Call TOLL-FREE (BOO) 521 -4414 or OUttId* U.S.A. (31 3) S94-4444 



Programming 

Multicolor Characters 

On The VIC 



McDonnell 



If\/ou know how to create standard programmable char- 
acters, you can create four-color characters and multi- 
color graphics. Here's how to select colors for the screen, 
border, character, and auxiliary colors. For the unex- 
panded VIC. 



In order to understand the creation of multicolor 
characters on the VIC-20, you must first have a 
working knowledge of standard programmable 
characters. You can easily pick this information 
up from the Programmer's Reference Manual, 
or from some excellent articles in past issues of 
COMPUTE! 

For standard programmable characters, draw- 
ing is done using an eight by eight grid. Each 
point on the grid represents one bit, which is 
turned either on or off by designating a value of 
one or zero for the bit. 

You can use as many as four colors in one 
character when using multicolor graphics. Since 
you must designate one of four color choices, 
rather than simply on or off, you cannot program 
each individual bit. However, if adjacent bits are 
combined to produce a piece of information, you 
have four choices: 

1. Both bits off (00) 

2. First bit off, second on (01) 

3. First bit on, second off (10) 

4. Both bits on (11) 

You now have the four possibilities necessary 
to designate four colors, but you have them at the 
sacrifice of horizontal resolution. Since it takes 
two bits to specify a color, you will be able to 
specify only four individual blocks of color across 
one horizontal line of your character (as opposed 
to the eight blocks available with a standard char- 
acter). You still have eight vertical rows available. 

Available Colors 

Each possible two-bit value corresponds to a spe- 
cific selectable color. 



00 = screen color 

01 = border color 

10 = character color 

11 = auxiliary color 

For border and character colors, you have the 
choice of the eight standard VIC colors. For screen 
and auxiliary colors, you can choose from the 16 
colors depicted in the screen and border color 
chart in the back of your owner's manual. More 
about selecting individual colors later. 

First, let's see how we designate our four 
initial choices. The figure shows the same pro- 
grammable character in both standard and multi- 
color mode. Notice that the numerical value of 
each horizontal byte is the same. The DATA state- 
ments you use to create each character are identi- 
cal. The difference is that in the multicolor mode, 
each pair of bits is combined and read as one 
nybble to identify the appropriate color group. 

Getting Into Multicolor 

Accessing multicolor mode and setting the desired 
character color are done simultaneously. For stan- 
dard characters, you POKE the appropriate screen 
location to the desired color using the numbers 
zero (black) through seven (yellow). To go into 
multicolor mode, you simply add eight to the 
desired color value. This both selects your charac- 
ter color and sets that particular character to mul- 
ticolor mode. For example, POKEing screen loca- 
tion 38400 to a value of 15 would both change the 
character color in the upper left corner of the 
screen to yellow, and turn on the multicolor mode 
in that space. 

Setting border and screen colors is done the 
same as always: by POKEing 36879 to the desired 
value from the color chart in your user's manual 
(POKE 36879,9 will give you a black screen and a 
white border). 

The choice of auxiliary color is made, believe 
it or not, in the same memory location you use to 
control volume, with a POKE to location 36878. 

Moy1983 COMPUm 97 



There are 256 possible values for this POKE loca- 
tion (0-255), and each of the consecutive 16 values 
corresponds to one of the 16 available colors, in 
descending order, from the chart. 

In other words, any value between zero and 
15 POKEd into location 36878 will produce an 
auxiliary color of black. Values 16 through 31 will 
produce white, and so forth. This creates a slight 
problem when we're writing a program where we 
want to control both volume and multicolor 
graphics. We can solve it with this formula: 

POKE 36878, A MS + V 

A is the number of the desired color (0 is black, 1 
is white, etc.), and V is the desired volume. 

That's what you need to know to create mul- 
ticolor graphics. The rest of the operation is iden- 
tical to creating standard graphics. 

These two programs illustrate how to use 
multicolor characters. The first program creates a 
four-color spaceship and moves it down the 
screen. The spaceship is drawn using two separate 
characters and POKEing them side by side. 

The second program is a coloring game my 
children seem to love. It allows you to choose the 
colors in which the character will be drawn. I 
created the character using a grid that is five char- 
acters wide and five deep, and which yields a 20 x 
40 area of programmable blocks. The screen and 
border colors are set to black and white by the 
program. You select the auxiliary color and three 
different areas of character color. Because charac- 
ter color blocks are set individually, a multicolor 
figure consisting of more than one character can 
be programmed to more than four colors. In this 
case, I could have selected up to 28 different colors 
for the figure. Six were sufficient. 

Program 1: Four-Color Spaceship 

10 PRINT" {CLEAR] " 

100 POKE36869, 255 

105 POKE36879,61 

110 FORI=7168T07679:POKEI, PEEK (1+25600) : NE 

XT 
130 FORI=7176T07191 
150 READA;POKEI,A:NEXT 

154 X=7690:C=30720 

155 POKEX , 1 : POKEX+C , 10 : POKEX+1 , 2 : POKEX+C+ 1 

,10 

156 FORT=1TO80 : NEXT : POKEX , 32 ; POKEX+1 , 3 2 

157 X=X+22:IFX>B185THEN154 

158 GOT0155 

160 DATA8, 2, 5, 23, 85, 93, 85, 40, 32, 128, 80, 212 
,85,117,85,40 

Program 2: coloring Game 

10 PRINT" {clear}" 

20 PRINT" {10 down} JUST A MINUTE..." 

110 FORI=7168TO7G79:POKEI,PEEKCI+25600) :NE 

XT 
120 F0RI=7176T07375 
130 READA:POKEI,A:NEXT 

139 POKEX+89,10:POKEX+89+C,10 

140 DATA48, 252, 239, 235, 235, 235, 232, 232, 235 



Draw 

128 64 32 16 8 4 2 1 


















1 




















1 

















1 


1 


1 




1 


1 








1 


1 


1 




1 


1 








1 





1 




1 











1 










1 





































1 










1 



Standard 



Multicolor 



= screen color 



= border color 



= character color 



~ auxiliary color 



= 4 
= 8 
= 63 
= 63 
= 46 

= 38 

_4 

= 21 





Same programmable character in 
both standard and multicolor mode. 



98 COMPUni May 1983 



standard VIC 20 

no additional memory needed 

(CG008) Alien Panic $12.95 

Race against time as your guy digs holes to trap 
aliens in 4 floor laddered, brick construction site. 
Requires joystick. 

(CG096) Antimatter Splatter $24.95 

This game is as good as its name. Another pure 
machine code game, this one is fast! The alien at 
the top of the screen is making a strong effort to 
rid the world of humankind by dropping anti- 
matter on them. The splatter cannon and you are 
our only hope as more and more antimatter falls. 
Joystick again is optional equipment. 

(CG026) Collide $12.95 

"Vic" controls one, you the other as cars go 
opposite directions on 4 lane track. Requires 
joystick. 

(CG094) Exterminator $24.95 

Recently scoring a rating of 10 out of a possible 
10 this game was praised as "one of the best I've 
seen on any computer" by a prominent reviewer 
in a leading magazine. The idea is to shoot a 
centipede before it overuns you, the problem 
being every time you hit it, it divides into two 
separate shorter ones. Several other little 
creatures bounce around during this struggle. All 
of them lethal. 100% machine language makes 
the rapid fire action very smooth. A joystick is 
optional, but as always, recommended, (a trac 
ball is also very nice!). 

(CG054) Krazy Kong $12.95 

Three screens, a gorilla, barrels, and changing 
difficulty levels help to make this one of our most 
popular. Joystick optional. 

(CG098) Racefun $19.95 

Extensive use of multicolored character capabili- 
ties of the "Vic" make this one very appealing to, 
the eye. Fast all machine language 
action, quick response to the stick or 
keyboard controlled throttle, combine 
with the challenge of driving in 
ever faster traffic to make it 
appeal to the rest of the body. 
Joystick controlling 
is an option. 




(CG058) Rescue From Nufon $12.95 

Must find 30 hostages in this 100 room, 5 story. 
alien infested, graphic adventure game. A 
continual big seller. Keyboard only (n. = north w = 
west etc.) 

(CG068) The Catch . . . $12.95 

Another all machine language game based on the 
principle that one person with one joystick 
guiding one catch/shield can catch everything 
that one alien can throw at one. The action comes 
slowly at first but by the fourth wave you'll be 
aware of . . . "The Catch" . . . 

Expanded Memory Vic 20 Games 

(CG090) Defender On Tri $19.95 

Pilot a defender style ship on mission to save 
trapped scientists from a fiery fate (they are 
aboard an alien vessel deep in the gravity well of 
sol). Excellent graphics, Short scene setting story 
in the instructions. "Defender On Tri" requires at 
least 3K added memory. 

(CG092) 3D Man $19.95 

The maze from probably the most popular arcade 
game ever, with perspective altered from over- 
head to eye level. The dots, the monsters, the 
power dots, the side exits, the game is amazing. 
"3D Man" requires at least 3K added memory. 

(CG088) Space Quest $19.95 

Our first 8K memory expander game and its a 
beauty. The scene {a short story is included) is far 
in the future, a time when man's knowledge has 
reduced an entire galaxy into a mapped series of 
quadrants. This game has stratagy (you plotyour 
own hyperspace jumps on Galaxy map), action 
(against a starry background you find yourself 
engaged in a dogfight, laser style), exploration 
(you must fly your ship deep into caverns to pick 
up necessary fuel). "Space Quest" requires at 
east 8K memory expansion and a joystick. 

Commodore 64 

(CG602) 3D-64, Man $19.95 

This available on the expanded "Vic 20" 
game, has been completely rewritten for 
the 64 and uses sprites, sounds, and 
other features not available onthe"Vic". 
This one requires a joystick. 



P.O. Box 1 56, Shady Cove, Oregon 97539-0156 Mastercard and Visa cards accepted C.O.D. Orders... call (503) 878-21 1 3 

VIC is a trademark of Commodore Business Machines, Inc. Games will be on tape unless you request disk. Ask for our FREE catalog I 



,235,235,59,59,15,3 

141 DAT A3, 3, 3, 3, 3, 3, 1,5, 21, 22, 21, 21, 21, 21, 
5,5,1, 1,0,0,0,0,0,0,0 

142 DATA0, 0,2 5 2, 2 55, 3, 60, 2 5 5, 255, 245, 2 13, 2 
13,213,217,234,230 

143 DAT A2 3 1,2 5 5, 2 55, 2 5 5, 2 5 5, 2 52, 9 2, 84, 8 5, 8 
5,149, 165,138, 128,96,96 

144 DAT A88, 88, 89, 2 2, 5, 5, 1,1, 0,0, 0,0, 0,2 55, 
2 55,255,255,255,2 55,12 5,125,125,1 
25,125 

145 DATA25 5, 2 55, 2 55, 2 5 5, 19 5, 0,6 5, 6 5, 0,6 5, 8 
5,85,85,170,20,20 

146 DAT A40, 170, 170, 8 5, 170, 8 5, 85, 85, 85, 0,0, 
63,255,192,60,255 

147 DATA2 5 5, 9 5, 87, 87, 87, 103, 17 1,1 55, 2 19, 2 5 
5,255,255,255,63,53,21 

148 DATAB5,8 5,86,90,162,2,9,9, 37,37,101,14 
8,80,80,64,64,0 

149 DATA! 2, 6 3, 2 5 1,1 7 1,2 35, 2 35, 43, 43, 2 3 5, 2 3 
5,235,236,236,240,192 

150 DATAl 92, 192, 192, 192, 192, 192, 64, 80, 84,1 
48,84,84,84,84,80,80,64,64,0,0,0, 
0,0,0,0 

151 PRINT" {clear} {05 DOWNIhELLO, THERE 1 MY 

NAME {down lis FRED, THE SEE-THRU 
{down} MOUSE. WHAT'S YOURS" 

152 PRINT: INPUTN? 

153 PRINT" {clear] {02 DOWN } WELL, "N$ 

154 PRINT" {D0WN}I HAPPEN TO LIVE IN { DOW 
down) YOUR COMPUTER. THEY {DOWN) 
CALL ME A SEE-THRU" 

155 PRINT" {dOWN}MOUSE BECAUSE I'M { DOW 

down}invisiblei " 

156 PRINT" {down} BUT YOU CAN SEE ME BY {DOW 
down} PAINTING ME DIFFERENT {oOtflSl} 
COLORS. JUST PRESS THE" 

157 PRINT"SPACE BAR TO BEGIN." 

158 GETB?:IFB$=""THEN158 

159 IFB$=" "THEN161 

160 GOT0158 

161 PRINT" {clear] {DOWNIFIRST LET'S COLOR M 
Y {down} FACE. PICK A NUMBER." 

162 PRINT" {down] 1=RED 8=LT.0R." 

163 PRINT" {down] 2=CYAN 9=PINK" 

164 PRINT" { down] 3=PURPLE 10=LT.CYAN 

165 PRINT" {down] 4=GREEN 11=LT.PUR. 

166 PRINT" {down} 5=BLUE 12=LT.GRN. 

167 PRINT" {down} 5=YELL0W 13=LT.BLUE 

168 PRINT" { down} 7=0RANGE 14=LT.YEL. 

171 PRINT; INPUTC? :D=VAL(C$)+2 

172 IFD<30RD>16THEN161 

173 PRINT" {clear} {D0WN}THANK YOU, "N? 

174 PRINT" {D0WN}N0W HOW ABOUT MY EARS":GOS 
UB185 

175 PRINT" {clear} {down} VERY GOODl NOW MY E 
YES":G0SUBia5 

176 PRINT" {CLEAR}0KAY, "N$ 

177 PRINT" {down} ONE LAST TIME TO C0L0R{D0W 
DOWN]mY mouth. ":GOSUBia5:GOT0193 

185 PRINT" {down} 1=BLACK": PRINT" {D0WN}2=WHI 
TE" : PRINT" {dOWN} 3=RED" : PRINT" { DOW 
D0WN]4=CYAN" 

186 PRINT" {down} 5=PURPLE": PRINT" {down} 6=GR 
EEN": PRINT" { DOWN] 7=BLUE" : PRINT" {D 
D0WN]8=YELL0W" 

187 Y=Y+1: PRINT :INPUTH$(Y):H(Y)=VAL(H?(Y) ) 
138 IFH(Y)<1 ORH ( Y ) > 3ANDY=1THENY=0 : GOTOl 7 3 

189 IFH(y)<10RH(Y) >8ANDY=2THENY=l:GOT017 5 

190 IFH(Y) <10RH(Y)>8ANDY=3THENY=2:GOTOl76 

191 H(y)=H(Y)+7 

192 RETURN 

100 COMPUTE! May 1983 



193 
194 



195 



196 



197 
198 

199 
200 
201 
202 
210 
220 
221 
222 
223 
224 
225 
226 
227 
228 
229 
230 
231 
232 

233 
234 
250 
260 



PRINT" {CLEAR] {D0WN]0KAY, "N$ 

PRINT" {down} HERE WE GO . IF YOU { DOW 

down} WANT TO CHANGE MY {DOWN] 

COLORS, PRESS THE" 

PRINT" {down} SPACE BAR. ": PRINT" { DOWN] AN 

D WHEN YOU WANT TO { DOWN] QUIT, P 

RESS E." 

PRINT" {down} BUT TO SEE ME AS YOU { DOW 

DOWNJJUST PAINTED ME, PRESS{D0WN} 

ANY KEY BUT THOSE TWO." 

GETF$ : IFF$=" "THEN197 

IFF5=" "THENY=0:POKE36869, 240:POKE3687 

9,27:GOT0161 

IFF$="E"THEN250 

PRINT" {clear} ":POKE36869,255 

PRINT" {clear} ":P0KE36869,255 

POKE36879,9 

POKE36878,D*15-l-l 

X=7887:C=30720 

F0RA=1T02 

FORB=0TO20STEP5 

POKEX , B+A : POKEX+C , H ( 1 ) 

X=X+1 

NEXTB 

X=X+17:NEXTA 

FORA=3T05 

FORB=0TO20STEP5 

P0KEX,B+A:P0KEX+C,H(3) 

X=X+1 jNEXTB 

X=X+17:NEXTA 

POKE7888+C,H(2) : P0KE7889+C,h( 2 ) : POKE79 

10+C,H(2 ):POKE7911+C,H(2) 

POKE7890+C,H(2):POKE7912+C,H(2) 

GOT0197 

POKE36869,240:POKE36879,27 

PRINT" {clear} {09 D0WN}S0 L0NG,"N?"1"© 



ET POUR MOl 

v(c-ao 

SOFTWARE 




TRIUMPH WITH A WINNER! 



fM>agreeaWe So/fuJore 




•Lisl HELPER- 


$19-95 


Nelson Softuiare: 




Word MITE'" 


.. 14.95 


Uiier MITE" _ 


.. 14.95 


Address MITE™ _ 


.. 14.95 


List MITE" 


.. 14.95 


Nel WORTH 


14.95 


Inucntory WORTH 


14-95 


Also; 




•General Ledger I, 11 


S 19.95 


•Accounts Payable - 


16.95 


•Accounts Receivable 


16.95 



1963 calilog only SI.00 

VISA & MASTER CHARGE ACCEPTED 



•Inventory 16.95 

•Order/Invoice 16.95 

•Suppliers 14.95 

•Custorjwrs 14.95 

•Pai-roll (Clwcks, eTC-( 29.95 

WordPauer (16K) 19-95 

Educational 

Hang 'em |5K or *) S12.95 

Geogramania • 

Grafihtiii, %toles, coptiais 12.95 
Chopper Math , 12.95 

•fiK exp. required 

SI .00 handling clurgs Willi ea. order 

DEALER INQUIRES WELCOME 



i SOFTWARE 

Division o( PM Businfss Stivices 

4400 Arden View Ct. . St. Paul, MM 55112 • (612(633-0891 

VIC 20 is 3 TM of Commodore Business Machines 



RAMAX" 

^^ by APROPOS 

The ONLY RAM your VIC-20® will need 



FEATURES 



A full 27k bytes of RAM 
(added to VICs 5k 
equals 32k.) 

• Fully switchable in sections 

BLK 1 switches 8k 

(Adr. 81 92 to 16383) 
BLK 2 switches 8k 

(Adr. 16384 to 24575) 
BLK 3 switches 8k 

(Adr. 24576 to 32767) 
BLK 5 allows/disallows 

8k ROM (games) 

(Adr. 40960 to 49 152) 
RAM switches 3k (Adr. 1 024 to 4095) 

• May be used with Super Expander® 
games or ANY other VIC-20 
compatible cartridge. 

• Built in RESET switch. 

• Fuse protected. 

• Totally self-contained. 

• 2 duplicate extension connectors for any device 
normally plugged into the expansion port. (BLK 5 i 
switched to connectors) 

• Very low power usage. (.150 amp max.) 

• High reliability gold plated connectors. 

• 6 month parts and labor warranty. 

• Factory service. - Extended service always available. 

THIS SUPERB PLUG-IN GIVES YOUR VIC-20 
REAL POWER AND EXPANDABILITY 




SOFTWARE 



DR. FLOYD 



FOR ONLY $149l00 



Shipping included 



WE ARE NOW OFFERING "RAMAX Jr." (19k), 
which is identical to RAMAX in EVERY way, except the 
top 8k (BLK 3) is not incorporated. Our introduction 
price is $129.00, shipping included. 

WE SERVICE WHAT WE SELL 

TO ORDER: 

Send Check or Money Order For the Total 

Calif, residents add 6% tax. 

Phone orders: CALL (805) 482-3604 24 HRS. 

For credit card orders, include all information on card. 

or contact your local dealer. 

^1 Foreign orders, add $8.00. 

All items shipped from stock. 
DEALER INQUIRIES WELCOME 



■APROPOS TECHNOLOGY, 



Psychoanalysis by computer? — well, not quite, but Dr. Floyd will 
carry on a conversation with you using psychoanalytic techniques 
giving the appearance oJ artificial intelligence. Requires t6k RAM 
or more. 
$14.95 stiipping included. 

WORD PLAY 

"WORDPLAY" is a collection of programs which allow the user to 
make original stories, write a form of Japanese poetry, play the fu n 
game of Animal (children love this one), and create jargon. A 
Bonus secret message (cypher) program is also included. In a 
word, "WORDPLAY" is a bargain. 
Requires 1 6k RAM or more. 
$14.95 shipping included. 

TYPE FOR YOUR LIFE 

With more challenge than an arcade game, learn to type up to 75 + 
words/min. (User selectable, but no FOOLING AROUND allowed). 
TEXT IS WIDELY VARIED SINCE IT COMES FROM THE 
PROGRAM TAPE. Action color graphics with sound fix your eyes 
to the screen (away from your fingers - clever!) Your man rows 
your boat up stream as fast as you can type. Maintain speed and 
destroy the Sea Monster; slow down and he will get you. Runs on 
the unexpanded VIC. 
$14.95 shipping included. 

All software is on high quality cassettes 
and Is replacement guaranteed. 

VIC-20 & SUPER EXPANDER are registered 
trademarks ol Commodore Business Machines. Inc. 

350 N. Lantana Ave., Suite 821 
Camarillo.CA 93010 



Atari Starshot 



Matthias M Giwer 



You are fli/iir;^ doxv)! n trench bisecting an nrtificia! 
ivorhl. A iii^^ctuhodicd voice whispers i)i i/oiir ear, "Turn 
off your computer - BASIC is too sloio." As this game 
will demonstrate, Atari BAS!C can be fast enough if 
i/oii ktnnc how to speed it up. 



The features in the Atari computer give it a 
graphics potential that approaches that available 
in dedicated graphics-oriented computers. And, 
features of Atari BASIC allow very fast manipula- 
tion of strings. Direct Memory Access for the 
Player/Missile Graphics, and the direct call of 
machine language from BASIC. This game com- 
bines all of these features and a few others. 

Let's start the discussion of this program 
with the subroutine al line 30000. The first thing 
to do is to enable the Player/Missile Graphics. 

Appendix A of the Atari Hardware Manual 
gives a detailed example of how to do this. This 
method only works when there is nothing on the 
screen. As soon as you write to the screen, this 
method fails. The usual approach is to reserve 
enough pages for the screen RAM, the Player/ 
Missile graphics pages, etc. All in all, to use Player/ 
Missile Graphics with GRAPHICS 7, you wind up 
reserving 32 pages and, in the process, taking 
care of the computer rather than letting the 
Operating System (OS) take care of you. Here is 
how to do it right. 

RAMTOP 

Contained in register 106 is the number of pages 
of RAM available to you for your use after every- 
thing needed for the system has been accounted 
for. What we want to do is to change this number 
so that RAM is protected for the Player/Missile 
Graphics pages. This is accomplished by POKE 
106, PEEK(106)-16. This puts a number "into that 
register that is 16 pages less than the number the 

102 COMPUTl! MQV1983 



Operating System determines upon powering up 
the computer or upon system reset. But just 
POKEing a new number does nothing until the 
computer makes use of it. 

The second GRAPHICS 7 call causes the 
Operating System to make use of this new RAM- 
TOP to relocate the screen RAM and the display 
list below RAMTOP. If you do not make this 
graphics call, you will hnd that the screen memory 
is above the new, lower protected memory limit, 
and the system will crash at the first attempt to 
scroll the screen. In other words, your system 
registers that point to the first screen byte, and 
the display list will be above RAMTOP. The 
Operating System cannot handle this. 

You proceed as normal but much more cleanly 
now that you have lowered the effective lop of 
your RAM and made the Operating System reor- 
ganize itself around that new maximum RAM 
with the seconci graphics call. Lines 30204 and 
30206 are the enabling POKEs for Player/Missile 
Graphics as described in many articles and in De 
Re Atari. Line 30208 is the POKE to tell the Oper- 
ating System where to hnd the start of the Player- 
Missile data. The start of this data is now simply 
RAMTOP. 

With Player/Missile Graphics set up this way, 
you can forget about what the rest of the system 
is doing and treat it just as though Player/Missile 
Graphics were not in use. The Operating System 
(('^7/ take care of you. 

Player Definition 

The next routine of interest is at line 30236. (This 
is the machine language routine published in the 
February 1982 issue of COMPUTE!.) It provides 
relocation of the four players at machine language 
speeds by means of two POKEs and, since the 
routine is executed during the vertical blanking 
time, the motion appears to be continuous. The 



EXPLORiE A NEW DIMENSION IN SOFTWARE 




'J 



When you reach the stage where you need more 
sophisticated software to help you with business and other 
applications, explore the programming power and flexibility -,^ 
available to you with systems software from OSS. 

BASIC A+ Wai Rate an A+ 

BASIC A + is what you'd expect from the authors of Atari BASIC! It's the only logica] upgrade available to 
the Atari BASIC programmer, and it adds statements and features that enhance the Atari's real power, flexibility and 
ease of use. While retaining all the features which make Atari BASIC so easy to use, BASIC A+ also offers features that 
place it at the forefront of modem interpretive languages. 

BASIC A+ is designed to support any business programmer or Atari user. Its enhancements include structured programming, 
more powerful input/output, helpful program development and debugging aids, and several business-oriented features, including a 
very comprehensive PRINT USING command. And, exclusively for the Atari computer, there is an amazing array of 
PLAYER /MISSILE GRAPHICS commands and functions. 

No other BASIC for Atari can match BASIC A+ when it comes to features, compatibility, and ease of use... $80. 00 




A Strong Software Family 

Other major systems software products from OSS include: 



MAC/65 

C/65 

TINYC 

BUG/65 



the finest and fastest compiete 6502 macro 
assembler/editor package you can buy. ...$80.00 

the first native mode "small c" compiler for Atari 
and Apple computers.... $S0.00 

for structured programming, an easy-to-use inter- 
preter, a learning tooI....S99.9S 

a powerful, self-relocatable debugger. FREE with 
MAC/65. ...S34.95 



And More... 

OS/A + , the first and finest operating system for BOTH Atari and Apple I! 
computers, is NOW included FREE as a part of every OSS systems software 
package. OS/A+ features a keyboard -driven, easy-to-use command processor, 
several simple resident commands, and logical and readable requests for even the 
most sophisticated utility commands. Versions of OS/ A -I- for some higher 
capacity drives are available at extra cost. 

NOTE: Unless otherwise noted, all OSS products require 48K and at least 
one disk drive. 

ASK YOUR DEALER, or cal! or write for our brochure. 

ATARI, APPLE II, and TINY C are trademarks of Atari. Inc., Apple CtMnpuier, Inc., and 
Tinv C Associairs. r«p«(ivfly. MAC/6S. QfbS. BASIC A + . BUG/65, and OS/A-t- arc 
traaemarks of Optimiud Systrms Software. Inc. 




Optimized Systems Software, Inc. 10379 Lansdale Avenue • Cupertino • California • 95014 • (408) 446-3099 



rest of the 30000 lines define the plavers. Note 
that the [RESTORE in line 30310 mal<es Player 3 
the same as Player 2, although it is defined as a 
different color in line 30230. 

Now let's jump to lines 100-120 - we will get 
to the earlier lines later. These lines arc the defini- 
tions that will be used for named subroutines 
later. The use of named subroutines is a desirable 
feature that greatly aids program development. 

Lines 1890-1930 are both the one-time calls 
and those such as DISPLAY that arc needed to set 
up the game at the start. 

The subroutine at line 10000 draws the back- 
ground in the wav that makes this illusion of mo- 
tion possible. Note that each set of lines is drawn 
with a different COLOR and that the COLOR 
numbers rotate 1, 2, 3, 1, 2, 3, and so forth. I will 
get back to this in a minute. 

Color Rotation Simulates Motion 

The START subroutine at line 5000 POKEs num- 
bers into the color registers so that vou can see 
the screen and draws the eight attackers. You will 
note also that COLOR J also rotates the COLOR 
assigned to the attacker graphic although in a 
more complex manner than in BACKGROUND. 

The DISPLAY subroutine at line 6300 controls 
the scoring and number of lives information that 
will be shown in the bottom alphanumeric 
window. 

ASELECT at line 6500 picks the order in which 
the attackers will attack from among the pre- 
defined ATTACK 1-4$ in lines 54 and 60. 

Within the infinite loop at line 2100 you'll 
find the reason why I used different COLORs to 
draw the background. The four statements in line 
2110 rotate the colors used in the background 
through the registers in a "bucket brigade" man- 
ner; the colors seem to be moving toward you. 
Given the drawn background, it appears as though 
you are moving forward through the trench. This 
illusion of motion requires the use of three differ- 
ent colors as a minimum. If there were only two 
colors, they would appear to flicker back and forth 
rather than move. The instructions in this line 
will be used in almost every subroutine so that 
this illusion oi motion is maintained. 

This technie]ue is useful in many applications 
- you can simulate many kinds of motion. If you 
were to reverse the order of the instructions, you 
would have the illusion of going backwards. Line 
2120 is simply a short delay. 

Another line that you will find throughout 
the program is first used at line 5017. A = 74 + 
PADDLE{0)/ 2.92 is the equation that limits the 
motion of Player on the screen. 74 is the farthest 
left X location that Player can move to. The range 
of values for the PADbLE(O) is to 228. Dividing 
this range of values by 2.92 converts the largest 



value of 228 to the rightmost location of Player 
and makes the full left-to-right motion of the 
Player a full turn of the PADDLE. This equation is 
also put into every subroutine where the program 
execution takes a noticeable amount of lime in 
order to simulate continut)us motion. 

The subroutine MOVE at line 5100 is a loiter- 
ing loop that waits a random number of loops 
until the first attack begins. When the number 50 
is reached, program execution jumps to SELECT 
at line 5200. 

The SELECT subroutine picks the sequence 
of the attackers from ATTACK IS through 
A'ITACK4S. ATTACKS for the first wave was 
initially called in line 1930. This routine randomly 
picks one of the four attack sequences defined in 
lines 54 and 60. An attempt to read the ninth ele- 
ment in this string is TRAPped to line 5211 which 
redraws the attackers and starts over. 

Note this use of the TRAP instruction. It is 
not meant simply to avoid a program crash, but 
rather to perform an integral program function. 
Rather than a RAM and time-consuming test or 
loop, one simple statement is used. 

Lines 5215-5240 erase the chosen attacker, 
position Player I over the erased attacker, and 
give some warning sounds. Line 5241 calls the 
subroutine JOIN at line 5800. This routine adds 
together the strings which are used to define the 
X and Y positions of Player 1 as it moves from its 
initial position to its attack position. 

Special TRAPs 

The strings are the AXIS and AYIS through AX8$ 
and AY8S that were defined back in the beginning 
of the program. These are the X and Y coordinates 
to be POKEd into PLX+ I and PLY + 1. They are 
stored as groups of three numbers. These values 
are read in lines 5260-5270. Note that bv using 
TRAP here 1 do not have to keep track of tlie 
number of elements in the string. And again in- 
stead of some test or loop, a simple statement 
is used. These strings are merely added together. 
No matter what the sequence of the attack, the 
last pattern is always the same, and the last set of 
numbers in the string is always the same. 

The ATTACK subroutine at line 5300 is where 
the shooting occurs. The first call is for the sub- 
routine PATTERN at line 5600. This subroutine 
chooses among five possible X position patterns 
and five possible Y position patterns. These are 
the rest of the strings defined in the beginning of 
the program. This independent choice of X and Y 
patterns permits a total of 25 different attack 
patterns. 

In line 5315, the X and Y values for this attack 
motion are read out in groups of three. In this 
case, the TRAP is used to jump back to the PAT- 
TERN subroutine call to pick another pair of 



10^ COMPUTE! MayW83 



and sofhere were keys 
foriheAtari400. 




.n the bcsinning there was the membrane keyboard. 

So it was to be clone that Inhome Software would create a full-stroke 
keyboard for the Atari 400 Home Computer and it would be called the B Key 
400, and would sell for $119.95 U.S. funds. 

The new B Key 400 was made so easy to install that the owner could do 
it himself in a miraculous two minutes. 

With the B Key 400 keyboard from Inhome Software, you will follow 
into the land of professional home computers that are powerful, easy to 
program and have a great capacity that can be made even greater with Inhome 
Software 48K and 32K memory boards. It was done and it was good. 

INHOIV/S 

ADVANCING THE PROGRESS 

Inhome Software Incorporated, 2485 Dunwin Drive. Mississauga. Ontario, L5L 1T1 (416) 828-0775. Atari is a trade mark of Atari Inc. Made in Canada 



strings when the end of the STRING is reachoci. 
This gives ctintinuouslv varying motion to the 
attacker. 

Lines 5324 and 5325 change the size of the 
attacker as it comes "closer" or goes "farther 
away." F and G are flags that control the firing 
and motion of the missiles. It is worth examining 
hou' these flags function. 

F controls the attacker's missile firing. Other 
than its housekeeping functit>n, the primary pur- 
pose of the IF F = is to fix the X and Y location at 
the moment of firing so that the motion is calcu- 
lated only from this point. After F is set to 1, these 
statements are no longer executed. If they were, 
the missile would weave back and forth in X and 
Y in unison with the attacker. Behind the F= I 
flag are the calculations that determine whether 
the missile passes to the left or to the right. The G 
flag performs a similar program function. 

Lines 5350 and 5352 check for missile-to- 
player collisions and direct action to the appro- 
priate subroutine. Line 5355 clears the collision 
registers. 

HITYOU, HITME, HITUS 

The HITYOU, HITME, and HITUS subroutines 
introduce Players 2 and 3 as the explosions. In 
HITYOU and HITME, these two players are se- 
quentially put in the same ItKation as the hit 
player. This sequence is controlled bv the TT vari- 
able. Note that the two explosion shapes are the 
same but of different colors. Also, when they are 
called, they are placed one Y position different. 
The purpose is tc) give some illusion of a dynamic 
explosion. 

Lines 5440 and 5540 move the hit player and 
explosions off the screen. The logical truth state- 
ments determine whether the hit player was to 
the left or right of center when hit and then move 
it off the screen to the left or right as appropriate. 
Lines 5545 and 5547 cause the attacker and the 
explosions to grow larger as they go by. 

The significant difference in the two sub- 
routines is that in HITYOU there is an additional 
collision test in line 5560. This requires you to get 
out of the way of the hit player as it rolls off the 
screen. If you don't, you are also destroyed, and 
both players roll off the screen. This is controlled 
by the HITUS subroutine. Being hit by the at- 
tacker's missile and by the damaged attacker 
causes you to lose one life. 

Good Practice 

This is a quick review of a fairly complex program. 
It exploits many of the Atari's features. The 
method of reserving the Player/Missile Graphics 
pages by moving RAMTOP lets the machine take 
care of you and perhaps completes the official 
Atari version of how to turn on the function. 




/ loii'iu^ colors cn'iitc the illusion oj 3-D iihyiviiieiil in 
"Starsliol." 

40 J=66:PX=S 

50 DIM ATTACK* (B) , AX5t < J ) . AYS* ( J) , AX 
t (3*J) , AY* (3«J),APX1*(J) , APYJ* (J) 
. APX* < J ) , APY* (J) 

51 DIM AX4* ( J ) , AY4* (J) , APX2* ( J) , ftPY2 
*<J) ,APX3*(J) ,APY3*(J) ,APX4*<J) ,A 
PY4t ( J ) , APX5* f J) , APY5* ( J ) 

52 DIM AX3* ( J) , AY3* ( J ) , fiX2$ ( J) , AY2* ( 
J> ,AX6*(J> ,AY6*<J) ,AX7*(J) ,AY7*<J 
) ,AY8*(J) ,AXS*(J) ,AXi*<J>,flYl*(J) 

53 DIM PLAYER* ( 1 O) , ATTACKl *( B) , ATTftC 
K2*(8) ,ATTACK3*C8) .ATTACK 4* (8) 

54 ATTACK 2*= "376284 15": ATT ACK3*= " 286 
47135": ATTACK 4*= "47613325" 

60 ATTACK 1 *="546372ei ": PLAYER*^" 1 2 

3 4 5" 

61 AX5*=" 13 613 613513 413313 2131 130 129 
12S127126124I22121121122123124125 
126126" 

62 AYS*=" 038037035034034034035037039 

04 104 304 504 704 9 05 20S6059062065068 
07 1074 " 

6 3 AX4t=" 1 181201 22124 1261281301 32134 
13 41 3 2130 1281 26 1261261 26 1261 26126 
126126" 

64 AY4*="03603403203002S030032034037 
4 004 3 500570 6 3 070 07 6 08 2 80078 76 
075074" 

65 AX6*="156154152150 14814614414214 
138136" 

66 AY6*=" 033036034033034036038040042 
040038" 

6 7 AX 2*= "07808008 208403 6 0880 9 0920 94 

096098" 

68 AY2*= "038042044046048050052049046 
4 2 3 8" 

69 AX lt="058060062064066068070072074 
076078" 

7C^ AY 1S=" 03303503 1035033042046048046 
042038" 

7 1 AX 3*= "098 100 1 02 1 04 1 06 1 08 1 101 121 14 

116 118" 
7 2 AY3t=" 04004404804 604 401 2040038036 

037038" 
7 3 AX7*=" 176174172170168166164162160 

158156" 
7 4 A Y 7 * = " O 3 8 O 3 6 O 3 4 O 3 2 3 3 3 O 3 6 O 3 9 4 2 

4 O 3 8" 

75 AXa*=" 19619419219 18S1BS1S41821SO 

1 7B176" 

76 AY8*=" 040044048046044042040038036 



106 COMPUTE May 1963 



ATARI SINGS YOUR FAVORITE SONGS!!! 

THE Original VOICE BOX Speech Synthesizer by the ALIEN GROUP has received rave reviews: 

MICRO COMPUTING-"The VOICE BOX injects an endearing personality to your computer The possibilities are enormous." 

COMPUTE-"The VOICE BOX offers more human-like tones and does not blank out the screen." 

CREATIVE COMPUTING-"English text and phonetic code may be 

freely intermixed rather than requiring separate modes as is the cose 

without exception with every other speech system. A mode called 

talking face displays an animated face with impressive lip sync A 

animation." J 

ANTlC-"There is a great potential for teaching children to speil and 

an added dimension to games overall. I believe the VOICE BOX is 

well worth the price tag." 

ANALOG-"For ATARI owners who wont to add speech to their 

programs, the Alien Group VOICE BOX is probably the best ^ 

choice." 

POPULAR SClENCE-"The speech quality is excellent. Besides 

creating speech, the software has a bit of fun with graphics." . - 



and on Ihe new VOICE BOX 1 1 

TIME MAGAZINE-"Machine of the Year" "The VOICE BOX by the 
Alien Group enables an ATARI to say aloud anything typed on its 
keyboard in any language. It also sings "Amozing Grace" and 
"When I'm 64" or anything else that anyone wants to teach it. 



INCORPORATE THE SINGING HUMAN FACE 
INTO YOUR PROGRAMS AND GAMES 




VOICE BOX II 
Speech & Singing Synthesizer 



ro order by moil send a check or money order to the ALIEN GROUP 
For $169. Then, try the VOICE BOX It for !0 doys, and if it isn't the finest 
ralue you've ever seen in a computer peripheral, the most challenging and 
provocative addition you've ever made to your system, return it in its original 
:ondition for a full refund. 



THE ALIEN GROUP 

27 West 23rd Street (212)741-1770 

New York, NY 10010 



The New VOICE BOX II for ATARI plugs into the serial port of the ATARI 
400/800 with sound coming out of the TV/monitor 48K DISK is re- 
quired. It has all of the features of the origina I VOICE BOX plus many 
exciting new hardware and software features; 

• The ability to sing with voice and 3 pari music. 

• A library of 30 famous songs. 

• A comprehensive musicsystem that allows the user toeasilyenferor 
modify new songs. 

• Software that con convert the bottom two rows of the ATARI keyboard 
into a piano with a range of Wh octaves using the shift and control 
keys. 

• Programmable musical sound effects such as tremolo, vibrato, glis- 
sando and click track. 

• A singing human face with lip-sync animation designed by Jerry 
White. 

• A talking or singing AI.IEN face with software that allows the user to 
change the foce and 8 mouth patterns as he sees fit. 

• The ability to speak with inflection and feeling. 

• Can speak in a foreign language with correct foreign spelling as 
input. 

• A talk and spell program by Ron Kramer. Users can program any 
vocabulary for this spelling game. In fact, this program can even 
speok in o foreign longuage like French, where the user must spell 
the correct word in English, or vice versa. 

• GREEN GOBLINS-A talking arcade game by John V^/ilson. 

• Random Sentence Generator-An amusing grammar game that 
helps teach school children to identify parts of speech and recognize 
a variety of sentence structures. 

• NUMBER SPEAK-A subroutine by Scott Matthews that converts up to 
a 9digit number into normal English pronunciation. Ideal for build- 
ing your own math games. 

• STUD POKER-A talking poker gome by Jerry White. 

• The screen never blanks out while talking or singing. 
•■Singing or speaking subroutines can be incorporated into your 

programs, requiring as little as 100 bytes of RAM plus 5 bytes for 
each word. 

• Entries into the S5000 talking or singing game contest can be 
written using the VOICE BOX ll-send for contest information. 

• Price $169.00 includes VOICE BOX II and all of the above software. 

• Inquire about our discounts for educational institutions. 



ALSO AVAILABLE AT LEADING COMPUTER STORES THROUGHOUT THE WORLD. 

Atari is a registered trademark of Warner Communications. 



036033" 

83 APX 1*=" 1 261 20 1 1 4 1 1 O I 1 01 141 2012613 
2138142142138132126120 114110 110 11 
4120126" 

84 AP Y 1 *= " O740770820'?0O95 1 OO 1 04 i 05 1 O 
7 1091121141121 09 1071 05 1 04 1 0009509 
0082077" 

85 APX2«=" 1261 2B1 30 134 1381 421421 3613 
124121113)1010710410711011812012 
4126128" 

36 APY2*="0740790S4 086088094 1001061 1 

01 14 1 10108106 100094 03 7 08008008007 

8076075" 
87 APX3*=" 1261 30 134 138 1421461 421 381 3 

4 13012612613013413814214414213813 

4130126" 
83 APY3*=" 07407407407407408208609009 

3106114 120114 10609809008608207407 

4 7 4 7 4" 

89 APX4*="12613414213412611S110 110 12 
613 414213 4126113110110 12613 414213 
2126126" 

90 APY4* ="074 07808208609208608207 807 
4 78082086092096092 0SS034O8O07 607 
2 O 7 2 O 7 4 " 

9 1 APX5t=" 1261 32 138 144 150 156 162 156 15 
1 44 1 38 1 321 26 1 20 1 16 11 O 1 04093 1 04 1 1 
1 16 12 6" 
92 APY54= " 07407006807007403008409009 
61 02 1 06 1 020960 9 2086 08207 807607 4 07 
Ci O 7 2 7 4 " 
lOO BACKGR0UND=lOOOO: START=5000: MOVE 
=5 100:SELECT=5200:ATTACK=S300:HI 
THE=54 00:HITY0U=5500 
110 PATTERN=5600; RESET=5700: J0IN=5S0 

O: HITUS=S900 
120 XSCR=6000: YSCR=6100: L0SS=6200: DI 
SPLAY=6300: RESET 2= 64 00: ASELECT=6 
5 O 
1890 GOSUB 30000 
1900 GOSUB BACKERDUND 
1910 GOSUB START 
1920 GOSUB DISPLAY 
1930 GOSUB ASELECT 
2000 REM CONTROL LOOP 
2100 FOR IJK=1 TO 2 STEP 
2110 TEMP=PEEK ( 710) : POKE 710,PEEK(70 
9):P0KE 709, PEEK (70S) : POKE 70S, 
TEMP 
2120 Q=SIN(1) 
2130 GOSUB MOVE 
2900 NEXT UK 
5000 REM START 

5005 POKE 7OS,10:P0KE 709,0:POKE 710 
,S6:POKE PLY,150:P0KE 53761,132 
: REM 709, 152 

5010 FOR 1=1 TO 8 

5011 FOR J=0 TO 2 

5016 TEMP=PEEK (710) :POKE 710,PEEK<70 
9>:P0KE 709, PEEK<70Q) : POKE 708, 
TEMP 

5017 A = 74 + PADDLE (O) /2. 92:P0I<:E PLX,A: 
POKE 53760, A-33 

5019 COLOR J«I:IF J*I=4 OR J*I=0 OR 
Jtl=8 OR J«I=12 OR J»I=16 THEN 
COLOR 1 

5020 PLOT 20*1-10, J: DRAWTO 20«I-11,J 

5021 COLOR J«I:IF J»I=4 OR J»I=0 OR 
J*I=a OR J»l=12 OR J«I=16 THEN 
COLOR 2 

5022 PLOT 20*1-8, J+3:DRAWT0 20»I-12, 
J+3 

5025 TEMP=PEEK (710) : POKE 710,PEEK(70 
9): POKE 709, PEEK (70B) ;POKE 708, 

108 COMPUIB May 1983 



TEMP 

5033 COLOR J«I:1F J*l=4 OR J«I=0 OR 
J*I=B OR a*I=12 OR J*I=16 THEN 
COLOR 3 

5034 PLOT 20*I-S, J+6:DRAWTO 20*1-9, J 
+6:PLOT 20* 1-12, J+6: DRAWTD 20*1 
-11, J+6 

5036 NEXT JiNEXT I 

5090 RETURN 

5100 REM MOVE 

5105 FOR IJK=1 TO 2 STEP O 

5110 TEMP=PEEK (710) : POKE 710,PEEK(70 
9):POKE 709, PEEK (70S) -.POKE 708, 
TEMP 

5111 A=SIN ( 1 > 

5120 A=74+PADDLE (O) /2. 92: POKE PLX,A: 

POKE 53760, A-33 
5130 RR=RR+1:IF RR=50 THEN GOSUB SEL 

ECT: RR=INT (40«RND (O) } : POKE 5376 

3, O: POKE 53761 , 132 
5135 NEXT UK 
5190 RETURN 
5200 REM SELECT 
5205 JJJ=JJJ+1 

5210 TRAP 521 1 : R=VAL ( ATTACK* ( JJ J , J JJ 
)):C0LOR 0:GOTO 5215:TRAP 40000 

5211 GOSUB START: J J J=0: GOTO 5205 
5215 FOR J=0 TO 2 

5220 PLOT 20*R-10, J :DRAWTO 20«R-il,J 

5223 TEMP=PEEK (710) :PDKE 710,PEEK(70 
9): POKE 709, PEEK (70S> : POKE 708, 
TEMP 

5224 A=74+PADDLE (O) /2. 92: POKE PLX,A: 
POKE 53760, A-33 

5225 PLOT 20*R-S, 8-J : DRAWTO 20»R-9,8 
-J:PLOT 20SR-12, 8-J : DRAWTO 20*R 
-1 1 ,8-J 

5230 NEXT J 

5235 PLOT 20«R-8, 3: DRAWTO 20*R-12,3; 
PLOT 20*R-8, 5: DRAWTD 20«R-12,5 

5236 POKE PLX+1 , 36+20«R:P0KE PLY+1,3 
8:PLOT 20*R-8, 4: DRAWTO 20*R-12, 
4 

5238 FOR Z=250 TO 50 STEP -50: FOR X= 
15 TO STEP -5:SOUND 3,Z,a,X:N 
EXT X 

5239 TEMP=PEEK(710) :POKE 710,PEEK(70 
9):P0KE 709, PEEK (708) : POKE 70B, 
TEMP 

5240 NEXT Z 

5241 GOSUB JOIN 

5249 TEMP=PEEK (710) : POKE 710,PEEK(70 
9):POKE 709, PEEK (708) : POKE 708, 
TEMPrPOKE 53763,134 

5250 A=86+PADDLE (O) /2. 92: POKE PLX,A: 
POKE 53760, A-33 

5255 FOR J=l TO 200 

5260 TRAP 5280: X=VAL ( AX* ( J«3-2, J*3> ) 
: Y=VAL (AY* (J*3-2, J*3) ) :PDKE PLX 
+l,X:POKE PLY+1,Y:TRAP 40OOO:PD 
KE 53762, Y-20 

5265 TEMP=PEEk (710) :POKE 710,PEEK(70 
9): POKE 709, PEEK (708) : POKE 708, 
TEMP 

5266 A=74+PADDLE (0) /2. 92:PDKE PLX, A; 
POKE 53760, A-33 

5270 NEXT J 

5280 GOSUB ATTACKiGOSUB RESET 
5290 RETURN 
5300 REM ATTACK 
5305 GOSUB PATTERN 
5310 FOR J=l TO 200 

5315 TRAP 5305: X=VAL (APX* ( J«3-2, J«3) 
) : Y=VAL (APY* (J«3-2, J«3) ) : TRAP 4 



OOOO PLX,A:PaKE PL Y , 1 4B+RR : TT= 1 

5321 TEriP = PEEK (7 lO) : POKE 710,PEEK(70 5432 IF TT=1 THEN POKE 53259, 3:P0KE 
9):PDKE 709, PEEK (708 J : POKE 708, PL Y +3 , 1 44 +RR : POKE PL X +-3 , A : POKE 
TEMP PLX,A:PDKE PL Y , 1 4S+RR : TT=0 

5322 A=74+PADDLE <0) /2. 92; POKE PLX,A: 5435 TEMP=PEEK ( 7 1 ) : POKE 710,PEEK(70 
POKE 53760, A-33 9): POKE 709 . PEEK < 709 >: POKE 708, 

5324 IF Y>94 THEN POKE 53257, 1:P0KE TEMP 

53258,1 5440 RR= ( RR + 7 ) : A= ( A + 7 ) * < A S 1 28 ) + < A-7 ) 

5325 IF Y<94 THEN POKE 53257, 0:POKE »(A<127):IF A<0 THEN J = 201 

53258.0 544 1 POKE 53760, RR 

5330 POKE PLX+l,X;POKE PLY+1,Y:P0KE 5442 IF A<0 OR A>255 THEN J=201 

53762, Y-20 5444 IF 144+RR>2S5 THEN J=201 

5333 IF F=0 THEN MlP=MYPHBASE+777+Y : 5490 NEXT J : GOSUB YSCR 

POKE 53253, X:POKE M 1 P , 1 2 : M 1 PO = ri 5495 POKE PL Y + 2 , 229 : POKE PLY + 3,229:P 

IP: T = riYPMBASE + 907 + Y: XT=X OKE 33761.0 

533S IF F=0 THEN F=1:P0KE 53765,207: 5497 RETURN 

POKE 53764,100 5500 REM HITYDU 

5337 IF F=l THEN M I P=M 1 P+7 : XT= ( - 1 . 5+ 550S POKE 53763 , 1 5 : POKE MOPO,0:PQKE 
XT) « ( XT< 128) + < 1 .5+XT) * ( XT>128) : M 1 PO , O : RR=0 : POKE M0P,0:PDKE MIP 
POKE 53253, XT: POKE HIP, 12: POKE ,0 

MiPO.O 5510 FOR J=l TO 200 

5338 IF F=l THEN M 1 PO=M 1 P : POKE 53765 5531 IF TT=0 THEN POKE PL Y+2 , Y- 1 : PO 
, 160: IF M1P5T--50 THEN F = 0;POKE KE PLX+2,X:POKE PLY+l,Y:POKE PL 
MlPO,0 X+i,X:POKE PLX+3,0:TT=1 

5339 TEMP = PEEK <7 10) : POKE 710,PEEK(70 5532 IF TT=1 THEN POKE PL Y + 3 , Y-9 : POK 
9):P0KE 709, PEEK (708) : POKE 70B, E PLX+3,X:POKE PLY+1,Y:PDKE PLX 
TEMP +1,X:PQKE PLX+2,0:TT=0 

5340 IF G=0 THEN IF PTRIG(0)=0 THEN 5534 A=74 +PADDLE C O ) / 2 . 92 : POKE PLX, A: 
M0P=MYPMBASE+76a+ 150: PT=SO+PADD POKE 53762, Y:PQKE 53760 , 4 1 +PADD 
LE<0) /2. 29:P0KE MOP , 3 : 6= 1 : POKE LE(0)/2.92 

53252, PT 5S40 Y = Y + 7 : X= < X + 3 . 5 ) * £ X > 1 28 ) + ( X -3 . 5 ) 
5342 IF e=l THEN MOPD=MOP : TO=MOP-70 : *£X<128) 

G=2:P0KE 53765 , 1 5 : POKE 53764,50 5545 IF Y>94 THEN POKE 53257,1: POKE 
5347 IF G=2 THEN M0P=M0P-7 : PT= < 3 . 5 +P 53253,1: POKE 53259,1 

T) « (PT< 128)+ (-3.S+PT) * (PT>12B> : SS47 IF Y>130 THEN POKE 53257, 3:PaKE 

POKE MOP, 3: POKE MOPCO 53258,3: POKE 53259,3 

5349 IF G=2 THEN POKE 53252 . PT : MOPO= 5550 TEMP=PEEK ( 7 1 O ) : POKE 710,PEEK(70 
MOP: POKE 53765, 160: IF MOP: TO TH 9): POKE 709 , PEEK ( 708 ): POKE 708, 
EN G=0:POKE MOPO,0 TEMP 

5350 IF PEEK (53256)=2 THEN GOSUB HIT 5560 IF PEEK ( 53260 )<: >0 THEN GOSUB HI 
YOU TUS 

5352 IF PEEK (53257) =1 THEN GOSUB HIT 5582 IF Y>255 THEN J=201 

ME:POKE M0P0,0:P0KE MIPD.O 5584 IF X>255 OR X<0 THEN J=201 

POKE 53273.0 5590 NEXT J : BDSUB XSCR 

375 NEXT J 5595 POKE PL2+2,0:P0KE PLX+3,0:P0KE 
POKE PLX , PADDLE (O) : POKE PLY,14B 53763,0 

5395 RETURN 5597 RETURN 

5400 REM HITME 5600 REM SELECT PATTERN 

5405 POKE 53761 , IS: POKE M0P0,0:P0KE 5610 R= I NT ( 5*RND ( O ) ) + 1 

MlPO,O:RR=0 5621 IF R=l THEN APX«=APX1* 

5410 FOR J=l TO 200 5622 IF R=2 THEN APX»=APX2* 

5412 IF TT=0 THEN POKE 5325B,3:PDKE 5623 IF R=3 THEN APX*=APX3« 

PLY+2, 1 44+RR: POKE PLX+2,A:P0KE 5624 IF R=4 THEN APXS=APX4* 

PLX,A:PQKE PL Y , 1 4B+RR ; TT= 1 5625 IF R=5 THEN APX*=APX5t 

54 13 IF TT=1 THEN POKE 53259, 3: POKE 5626 TEMP = PEEK ( 7 1 O ) : POKE 7 10, PEEK (70 
PLY+3, 144+RR: POKE PLX+3,A:POKE 9):P0KE 709 , PEEK ( 703 ): POKE 70B, 

PLX, A: POKE PL Y , 1 48+RR : TT=0 TEMP 

5415 TRAP 5410: X = VAL ( APX4 ( J »3-2. J*3) 5630 R= I NT ( 5 * RND ( ) > + 1 

) : Y = VAL ( APYt ( J *3-2, J *3) > : TRAP 4 564 1 IF R= 1 THEN APY« = APY1* 

0000 5642 IF R=2 THEN APY«=APY2* 

5421 TEMP=PEEK (710) : POKE 710,PEEK(70 5643 IF R=3 THEN APY*=APY3* 

9): POKE 709, PEEK (70S) : POKE 708, 5644 IF R=4 THEN APY*=APY4* 

TEMP 5645 IF R=5 THEN APY*=APY5* 

5424 IF Y>94 THEN POKE 53257,1: POKE 5690 RETURN 

53258. 1 5700 REM RESET 

5425 IF Y<94 THEN POKE 53257, 0:POKE 5710 F=0:0=0:PaKE 53257, 0:POKE PLX+1 
53258,0 ,0 

5427 POKE PLX+1, X; POKE PLY+1,Y:PDKE 5790 RETURN 

53762, Y+20 5800 REM JOIN 

5430 IF TT = THEN POKE 53258, 3:P0KE 5810 IF R=l THEN A X « = AX 1 * : A X * ( LEW ( A X 
PLY+2, 144+RR:P0KE PLX+2,A:P0KE *)+l)=AX2*:AXt<LEN(AX«)+l)=AX3* 
PLX+3,0:TT=1 :AX*(LEN(AX4)+1)=AX4* 

5431 IF TT = THEN POKE 53258. 3:PDKE 5812 IF R=i THEN A Y$ = AY 1 * : A Y"5 ( LEN ( AY 
PLY+2, 1 44 +RR:POKE PLX+2,A:P0KE *)+l)=AY2*;AY4(LEN(AY*)+l)=AY3t 

Mav1983 COMPUTE! 109 



.-I O J ._! 

5375 

;so 



58 1 5 


5S1 7 


5820 


5822 


5825 


5830 


5835 


5837 


5840 


5842 


5845 



5B47 



5870 
5900 
5905 



5 9 1 O 
593 1 

5932 

59 4 

5950 



5982 
5984 
5990 
5995 

5997 
6000 
60 10 
6080 
6090 
6100 
6120 
6125 
6130 
6 180 
6190 
6200 

62 lO 
6220 
6280 
6290 
6300 
6305 

63 lO 
6320 
6330 
63 4 O 

6350 



AY4=AY3*:AY4(LEN(AY 



AX*=AX4* 
AX*=AX5* 
AXS=AX6* 



; AY*=AY4* 
; AY*=AY5* 
: AX* (LEN <fiX 



AY*=AY6*:AY* (LEN (AY 



:AYt(LEN(AY*)+l)=AY4« 

IF R=2 THEN A X «=A X 2* : AX * ( LEN ( AX 

*)+l>=AX3*:AX«(LEN(AX*)+l)=AX4* 

IF R=2 THEN A Y « = A Y 2* : A Y * ( LE N ( A Y 

t) +1)=AY3*: Ay« (LEN(AY«) +1 ) =AY4* 

IF R = 3 THEN A X * = A X 3* : A X * ( L E N ( A X 

« ) +1 ) =AX4» 

IF R=3 THEN 

S) + 1 ) =AY4S 

IF R=4 THEN 

IF R=5 THEN 

IF R=6 THEN 

6«) +1 } =AX5* 

IF R=6 THEN 

64) +1 >=AY5* 

IF R = 7 THEN A X * = A X 7* : A X * ( LEN ( AX 

«)+l)=AX6«:AX«(LEN(AX*)+l>=AX5* 

IF R=7 THEN A Y«= A Y7* : A Y* ( LEN ( AY 

»)+l)=AY6*:AY«(LEN(AYS)+l)=AY5* 

IF R=a THEN AXt=AX8*: AX* (LEN ( AX 

*)+l)=AX7*:AX*(LEN(AX*)+l)=:AX6* 

:AX*(LEN(AX*)+1)=AX5* 

IF R=8 THEN A Y*= A Y8* i A Y* ( LE N ( A Y 

*)+l)=AY7S:AY*<LEN(AY*)+l)=AY6* 

:AY*(LEN(AY»)-i-l)=AY5* 

RETURN 

REM HITUS 

POKE 53763, 15: POKE MOPa,0:POKE 

f1 IPD, O: RR = 0: POKE M0P,0:P0KE 

FOR J=l TO 200 

POKE PLY+2, Y-10: POKE PLX+2 
KE PLY+1,Y:P0KE PLX+1,X 
POKE PLY+3. Y-10: POKE PLX+3,A 
KE PLY, Y: POKE PLX,A 
Y=Y+7:X=(X+3.5)*(X>128) 
t ( X< 128) : A= (A+3 
. 5 ) * ( A < 1 1 2 ) 
TEMP=PEEK (7 10) : POKE 7 10, PEEK (70 
9): POKE 709. PEEK ( 70a) : POKE 708, 
TEMP 

IF Y>255 THEN J=201 
IF X >255 OR X<0 THEN J=201 
NEXT J:6aSUB Y5CR 

POKE PL2+2.0:P0KE PLX+3.0:P0KE 
53763, 
RETURN 
REM XSCR 
SCDRE=SCDRE+ 1 O 
GDSUB DISPLAY 
RETURN 
REM YSCR 
PLAYER* (2*PX- 1 
PX=PX-1 

IF PX=0 THEN GOSUB 
GDSUB DISPLAY 
RETURN 
REM LOSS 
IF SCORE>HSCR 
GDSUB RESET2 
GOSUB DISPLAY 
RETURN 
REM DISPLAY 

POKE 53258, O: POKE 53259,0 
? PLAYER* 

? "SCORE: "^SCORE 
? "HIGH SCORE: " : HSCR 
IF PX=0 THEN ? " PUSH TRIGGER F 
OR ANOTHER GAME"; 

IF PX=0 THEN IF PTRIG(0)=1 THEN 
6350.: GOSUB RESET2: GOSUB ASELEC 



MIP 



X : FD 

: PD 

+ ( X-3. S> 
5) * ( A>1 12) + ( A-3 



?*PX-1 ) =' 



LOSS 



THEN HSCR=SCaRE 



6360 
6362 



PLAYER* 
"SCORE: 



I SCORE 



6364 ? "HIGH SCORE: " ; HSCR 

6390 RETURN 

6400 REM RESET2 

6410 SCDRE=0: PLAYER*=" 1 2 3 4 5" 

6430 PX=5 

6490 RETURN 

6500 REM ASELECT 

6510 2Z=INT <4«RND (0) ) +1 

6S20 IF ZZ=1 THEN ATTACK« = ATTACK 1 * 

6522 IF Z2=2 THEN ATT ACK*= ATT ACK2* 

6524 IF ZZ=3 THEN ATT ACK*= AT T ACK3* 

6526 IF ZZ=4 THEN A T T flCK * = AT T AC K 4 * 

6590 RETURN 

lOOOO REM BACKGROUND 

10005 FOR 1=0 TO 3:PDKE 708+1, OrNEXT 

I 
10007 COLOR 3: PLOT 0.20:DRAWT0 70,20 

:DRAWTD 70,40:DRAWT0 90,40:DRA 

WTO 90.20:DRAWT0 159,20 
lOOlO COLOR 1:FQR 1=1 TO 2 
10020 PLOT , 20+ I : DRAWTO 70-I,20+I:D 

RAWTO 70- I , 40+ I : DRAWTD 90+I,40 

+1: DRAWTO 90+ I , 20+ I : OR A WTO 159 

,20+I:NEXT I 
10040 COLOR 2: FOR 1=1 TO 2 
10050 PLOT , 22+ I : DRAWTO 68-I,22+I:D 

RAWTO 68-1 . 42+ I : DRAWTO 92+1.42 

+I:DRAWTO 92 + I , 22 + 1 : DRA WTO 159 

, 22+ I : NEXT I 
10060 COLOR 3: FOR 1=1 TO 3 
10070 PLOT O , 24+ I : DRAWTO 66- I, 24+1 :D 

RAWTO 66- I , 44+1 : DRAWTO 94+1.44 

+I:DRAWTO 94 + I . 24 + I : DRA WTO 159 

, 24+ I : NEXT I 
1O08O COLOR 1:FDR 1=1 TO 3 
10090 PLOT O, 27+ I : DRAWTO 63-I,27+I:D 

RAWTO 63- I , 47+1 : DRAWTO 97+1,47 

+I:DRAWTD 97 + I , 27+ I : DRA WT 159 

, 27+ I : NE XT I 
lOlOO COLOR 2:F0R 1=1 TO 5 
lOllO PLOT O, 30+ I : DRAWTO 6O-I.30+I:D 

RAWTO 60-1 , 50+ I : DRAWTO 100+-I,5 

0+-I: DRAWTO 1 00+- 1 , 30+ I: DR AWTD 1 

59,3 0+I:NEXT I 
10120 COLOR 3:FDR 1=1 TO 5 
10130 PLOT O , 3S+ I : DRAWTO 55-I,35+I:D 

RAWTO 55- I , 55+1 : DRAWTO 105+I,5 

5+I:DRAWTO 1 05+ I , 35+ I : DRAWTD 1 

59,35+I:NEXT I 
10140 COLOR 1:F0R 1=1 TO 7 
10150 PLOT . 40+ I : DRAWTO 50- I, 40+1:0 

RAWTO 50- I , 60+ I : DRAWTD 110+I,6 

0+I:DRAWTO 1 1 0+ I , 40 + I : DR AWTD 1 

59,40+I:NEXT I 
10160 COLOR 2:'"0R 1 = 1 TO 7 
10170 PLOT O, 47+ I : DRAWTD 43-I,47+I:D 

RAWTO 43- I , 67+1 : DRAWTO 117+1,6 

7+I:DRAWT0 1 1 7+ I , 47+ I : DRAWTO 1 

59, 47+ I ; NEXT I 
lOlBO COLOR 3: FOR 1=1 TO 9 
10190 PLOT O, 54+1 : DRAWTD 36-I,54+I:D 

RAWTO 36-1 . 74+1: DRAWTO 124+1,7 

4 + I:DRAWT0 1 24 + I , 54 + I : DR AWTD 1 

59, 54+1 : NEXT I 
102O0 COLOR 1:FDR 1=1 TO 12 
10210 PLOT O, 63+1 : DRAWTO 27-I,63+I:D 

RAWTO 27-1 , 83+1 : DRAWTO 1^^3+1,8 

3+I:DRAWTO 133+1, 63+I:DRAWTO 1 

59,63+I:NEXT I 
10220 COLOR 2:FOR 1=1 TD 20 
J0230 PLOT O. 75+1 : DRAWTD 14,75+I:PLD 

T 159, 75+1 : DRAWTO 145,75+I:NEX 

T I 
10300 RETURN 



110 COMPUTEI •-■:, 1=)53 



>0000 
500 10 



30020 
30204 
3020i 
3020S 
302 10 

30 2 1 2 
3 2 14 
30230 

3 O 2 3 2 
30236 
3023B 
30 2 4 
3 C> 2 4 2 

30244 

30246 

30248 

30250 

30252 

30254 

302S6 

30258 

30260 

30262 
30276 
30278 

30282 

30283 
30285 

30287 



RE 
6R 
16 

* t 

'-y 

c 

PO 
LA 
PO 
IN 
PO 
PM 
PO 
5 
*P 
PO 
PL 
MY 

* t 
PO 
7 
PE 

P 
PO 
1 1 
RE 
NE 
FO 

I 
FO 
XT 
DA 

DA 
10 
, 1 
DA 



DA 
20 
24 
DA 
69 
74 
DA 
36 

DA 

25 

O, 

DA 

77 

, 1 

DA 

76 

DA 

6 

S = 

PL 

PO 

LL 

FO 

E + 

RE 

* 

DA 

6, 
FO 
AS 
TT 

DA 
. 4 



M « 
APH 
: 6R 

* t 1 
. *:> 

OMB 
KB 
Y&M 
KE 

E, P 
KE 
BAS 
KE 

3 !2 5 
LAY 
KE 

DV 
PMB 
NEW 
KE 
6, 4 
EK ( 
M D 
KE 
, 29 
M * 

* « * 
R I 
, A: 
R I 

I 
TA 
21 . 
14 1 
TA 
9, 2 
33 
TA 
54, 
,46 
TA 
5, 1 

4 , 7 
TA 
.O, 
, 25 
TA 
,6, 
53 
TA 
3,6 
6^ 1 
TA 
, 20 
74, 
TA 

TA 



«*« tPM 
ICS 7: P 
APHICS 

6 PAGE 
. -> .. <: 9 

AT" 

53277, 
ISS**** 
559, 62: 
LAY, MIS 
54279. P 
E IS NO 
53256, 3 
8 , O : P K 

SIZES* 
623, 33: 
ER PFt* 
ASE=256 

Pti BAS 

7 4, 134 

6 : p a h; E 

1 O 6 ) + 4 ) 
ATA* t *« 
7 10, 52: 
:PDKE 7 
* t#«VBL 
t t 

= 1536 T 
NEXT I 
=1774 T 



SETUP**** « 

D K; E 1 O 6 , P E E K ( 1 O 6 
7: POKE 752, 1 : REM 
RESERVE***** 
SPACESiPREPARE F 

3:REM *t*«*GRACTL 
* 

REM *«**tDMACTL. 
, NORM FIELD***** 
EEK ( 106 ) : REM * * t 
W RAMTOP***** 
:POKE 53257, 0:P0 
E 53259, 0:REM ** 
* *** 

REM *«*«*PRIDRIT 
«** 

*PEEK < 106) : REM * 
E*** ** 

:POKE 705,24:P0K 
707,54:P0KE 1788 
: REM ****«START 
* 

POKE 709,58: POKE 
12. O 
ANK INTERUPT RGU 

1706;READ A:PO 

D 1787: POKE I . 0: 



162, 3, 189, 244, 6, 2 40, 89, 
24 0, 6, 240, 83, 141, 254, 6, 



255, 6,14: 



6,24, 169, 



) - 
* 

OR 

P 

IL 

*« 

KE 

** 

Y 

** 

E 

( 
OF 

7 

TI 

KE 

NE 

56 

lO 

o, 

04 



53, 6, 24, 109,252, 6, 133, 

206, 189, 24 0, 6, 133,203, 173 

6.13 3,205, 189,248,6, 17Ci,2 
,255 

6, 144, 16, 168, 177, 203, 145, 

69, O, 145, 203, 136, 202, 2 8, 

6, 37 

6, 160, O, 177, 20 3, 145, 205, 1 

145,203,2 00,202,2 08,244, 1 

3,6 

173, 254, 6, 157, 240, 6, 189, 2 

240, 48, 133, 203, 24, 138, 141 

6 

109, 235, 6, 133, 204, 24, 173, 

,109, 252,6, 133, 206, 189, 24 

33 

205, 189, 248, 6, 170, 160, O, 1 

3. 14 5, 205, 200, 2 2, 2 08, 24 8 
253,6 

169, 0, 157, 236, 6, 202, 48, 3, 
6, 76, 98, 228,0,0, 104, 169 
7, 162,6, 16 0,0, 32. 92, 228, 9 



USR ( 1696) 

X=53248:PLY=17a0:PLL=1784 

KE PLL,9:POKE PLL+1,8:PDKE 

+2,26:PDKE PLL+3,26 

R I=MYPMBASE+1024 TO MYPMB 

1032:READ A:POKE I,A:NEXT 

M ***««DEFENDER PLAYER 0*» 



AS 
I : 
t* 



!4,24,60,60, 126. 255. 126. 3 



MB 
tA 



TA 
6 
R 1=0 TO 7: READ A: POKE MYP 
E+1 280+I , A: NEXT I:REM «*** 
ACKER PLAYER I***** 
TA 204,204,204,252,252,48, 
8 



30299 REM * * » * *EX PLOS I ON PLAYER 2*»« 
«* 

30300 FOR I=HYPMBASE+1280+256 TO MYP 
MBASE+256+1305: READ A:POKE I, A 
:NEXT I 

30305 DATA 24,36,80,52,90,52,105,93, 
170, 237, 181, 106, 253, 94. 171, 246 
, 173, 85, 44, 90, 116, 44, 52, 44, 24, 
8 

30309 REM « * * « *E XPLOS I ON PLAYER 3««» 
«* 

30310 RESTORE 30305:F0R I=«YPMBASE+1 
280+512 TO MYPMBASE+1305+512: R 
EAD A:POKE I,A:NEXT I 

30590 RETURN 

32000 SAVE "D: STARSHDT. 7" : STOP 

32001 LIST "D2: STARSHaT.7" : STOP t 



48 



«e5sr-"-;-cecABo '• 



95 



, pciniet 



conl.o. co'W 



212A 




560.00 



^%i% ^^_£^ t4 -l51 ^^ •'^]^ 




ENHANCE YOUR ATARI " 810 

HAPPY810 ENHANCEMENT 

Speed up program developmen!, loading, executipn, and copying time by reading 
disks up 10 3 limes fasier. Complete compatibility with existing software, with 
fasier disk Initialization, and reduced \war on the disk drive mechanism. No 
soldering or trace cu1tii>g required, complete installation inslroctions included, 
or contact youi dealer. Diagnostic program included. 

SOFTWARE ENHANCEMENTS (require HAPPY 810 ENHANCEMENT) 

HAPPY BACKUP PROGRAM 

Guaranteed to produce executable backup copies of any disk which can be read 
with a standard ATAf^l 8 ID* disk drive. Backup thnse important disks in your 
library or use HAPPY BACKUP for small scale software production. Com- 
pletsiy automatic duplication of loima! and data content ol the source disk. 
Single and multiple drive versions available. Backup copies will work en a drive 
without the enhancement. 

HAPPY COMPACTOR PROGRAM 

Combines self bootmg programs which reside one per disk into one disk with 
many self booting programs using the HAPPY COMPACTOR file structure. 
Programs are then executed from the self booting HAPPY COMPACTOR 
menu, and may later b« extracted back onto a single disk. Compacted programs 
disk will execute only on a drive which has the HAPPY 810 ENHANCEMENT. 
Pays for itself by reducing the number of backup disks you need, in addition 
to the added convenience. 

HAPPY CUSTOMIZER PROGRAM 

User friendly program to generate source disks with custom track format. 
Format is specified on a per track basis. Examples of usage and interpretation 
of results are included. This sysiem lequires a more advanced level user. 

HAPPY 810 ENHANCEMENT WITH SINGLE DRIVE HAPPY BACKUP S249.95 

MULTIPLE DRIVE HAPPY BACKUP PROGRAM S 49.95 

HAPPY COMPACTOR PROGR AfVI $ 49.95 

HAPPY CUSTOI^IZE R PROG RAM S 99.95 

Cau UH WRITE fOft oftDEfir^G ll^^unWATm^ Sw-,. no CUD at 

HAPPY COMPUTING | — '^x^ 
P.O. Box 32331 

San Jose, CA 95152 / 

(408)251-6603 * 

-ArARI£ia,i,[jj,I.-r,>. .,■ ATA-i I 



Mavises COMPUTE! Ill 




Atari CX85 
Numerical 
Keypad 

Charles Brannon, Program Editor 

Tile new Atari CX85 Numerical 
Kevptid is an add-on, tLMi-kev 
number pad (adding-machine 
style) with seven additional func- 
tion kcvs. Its primary use is to 
make it easier to type in num- 
bers. The Keypad was originally 
developed for use with the Book- 
keeper software package, but is 
now available separately. 

Seventeen-Key 
"Joystick" 

The kevpad plugs into the sec- 
ond joystick port. Using it from 
your program could be pretty 
trickv, except that Atari provides 
a handler program that reads the 
keypad like a jovstick and causes 
it to respond like the built-in 
keyboard. With the handler pro- 
gram, you can immediately use 
the kevpad in almost any pro- 
gram, including those you write 
in BASIC. It's especially valuable 
for VisiCalc, where vou are con- 
stantly working with numbers. 
The handler program is provided 
only on disk. 

To use the keypad, you boot 
the handler diskette first r then 
insert your applications disk 
(such as VisiCalc). The handler 
loads into a usually unused area 
of memory ($0600, page six). 
This conflicts with some pro- 
grams, especially machine lan- 
guage routines that also need 
page six. The handler disk also 

112 COMPUTi! MavWa3 



contains the assembler source 
code vi the handler and an alter- 
nate version of it that lets you 
define your own function keys. 
It's a well-made peripheral. 
It has an extra-wide zero key 
and a raised bump on the "5" 
key; both are accounting stan- 
dards. The keys have a nice feel, 
similar to the Atari 800 keyboard. 
The underside of the unit has 
three notches to let you position 
the cord conveniently. One of its 
best features is one-touch cursor 
control provided by default on 
the four "definable function" 
keys. It also has a minus key, 
decimal, and RETURN key 
(labeled ENTER). The unit is 
light, but it won't tip over. 

Function Keys 

To change the key values re- 
turned bv the keypad, you can 
use the POKE command in 
BASIC to change locations using 
an alternate form of the handler 
program. You load the alternate 
handler from DOS, exit to BASIC 
with SYSTEM RESET, and POKE 
in replacement values. If you 
POKE in a value of 255, the func- 
tion keys will behave like the 
console keys START, SELECT, 
and OPTION. 

You could change the four 
functii)n keys to arithmetic sym- 
bols for a four-function calculator 
program. Or, for typing in pro- 
gram listings, vou could change 
the period key (or the ENTER 
kev) to a comma, and you'd have 
a high-speed way of entering 
DATA statements. A keyboard 
overlav is provided to let you 
label the functions. 

If vou want to change the 
keypad's functions drastically, 
or relocate the handler in mem- 



ory, you can modifv the provided 
source code (machine language). 
The source code was written 
with the Atari Macro Assembler 
(AMAC), so you'll need the Pro- 
gram/Text Eciitorand AMAC to 
edit it (both are available 
from APX, the Atari Program 
Exchange). 

Documentation 

The Numeiical Kevpad comes 
with two manuals: a user guide 
and technical notes. The user 
guide is adequate for setting up 
and using the keypad for its pri- 
mary uses. 

The technical notes are a 
laudable attempt to provide the 
intermediate to advanced user 
with solid information. A 
schematic of the keypad is even 
provided, along with theory of 
operation, suggested changes, 
and a listing of the handler 
routine. Since the VIC and 
Commodore 64 use an Atari- 
compatible joystick port, the 
technical notes mav even permit 
vou to adapt this versatile 
peripheral to the Commodore 
computers. 

CXS5 Ntiitwriail Kei/jUhi 

Atari, Inc. 

1196 Borrci.>ns Aiviiiic 

Suuiii/vnlc, CA 940S6 

SU4'.95 




Atari' f new plii^i-iii kc[/pnd. 



COMPUTER OUTLET'S 
EDUCATIONAL RECOMMENDATIONS 



Pre-School 

Sammy Ttie Sea Serpent . .{C|$13,(Di$l9 
Oswald and tne 

Golden Key (C)S13, |D)S19 

Pre-School 1.0- Buiider (C1S13, (D)S24 

Hodge Podge (D| S16 

My Firs! Alphabel (D) S26 

Ten Little Robots .(CI $13, (D) $15 

Basic Malh I + ,-, '.0(01 S19 

Basic Math (Add., Sub.l or 

MulI.,Div,|(C) $10 

Alien Counter/Face Flash |C.D| $26 

Jar Game/Chaos (CD) S26 

Pre-School Fun (Color, Shape, etc.) (C) S16 
Hickory Dickory/ 

Baa Baa Black Sheep(C) - $25 

HumptyDumptylJack and Jill (C) . . . .$25 

Counters (CD) $19 

Facemaker(D) $23 

I'mDHterenHO) S19 

Math 

Monkey Up a Tree (C. D) S19 

Video Math Flash Cards (CD) $13 

Math-Tic-Tac-Toe(C, D) $13 

Calculus Demon (CD) . $19 

Cubbyholes (C, D) $19 

Metric and Problem Solving (Dl $26 

Algicalc(C. Dl ,. , . ,$19 

Polycalc(C D) $19 

Counters (Ages 3-61 (CDl $26 

Basic Math (Add. Sub.l (C) :i1D 

Basic Mach (Mult., Div_)(C) .inO 

Basic Math (-^. -.-.mD) litg 

Ten Little Robots (C)$13.(D)i!15 

Compumalh-Fractions. , . .(C) $23, |D| ti29 
Compumalh-Decimals . . . , (C) 123, (D) S29 

Alien Numbers (C, D) ;>23 

MathPakl (CD) - , iS23 

Alien CounteriFace Flash (C, D) S26 

Golf Classic/Compubat(An9les)(C, D)j26 
Jar Games/Chaos (Ages 6-10) (C, D).. .S26 
Gulp and Arrow Grapttics (7-12) (C, Dl $26 
Battling Bugs/Concentiation (C, D|. . .S26 
Addition With Carrying .. .(C)$13,(D)$19 

Cash Register (C) $13, ID) $19 

Number Series (C) $13, |D) S19 

Quantitative Comparisons (C|$15, (D)S19 

Sky Rescue (C)I15, ID1S19 

Big Math Attach (C)$17. iD] $22 

Math Facts Level II 

Grade 1-3 (C)$13. (D)S15 

Com'putatiort/ 

Concenlralion {C| $13. (D)S15 

Ship'sAhoy(Dl $20 

The Market Place(D) S26 



ATARI 



TM 




Reading and Language Ails 

LellermanlC D) $19 

My First Alphabel (D) $26 

Wordmaket (C, D| $19 

Spelling Genie (CO) $19 

Word Search Generator(D( $19 

Compuread (C)S17,(D)S23 

AstroquolES (C) $13, (D)$19 

Memory Builder/ 

Concentralion (C)$13,(D)S19 

Lers Spell (C) $13 

Spelling Builder (C)$16,(D| S20 

Do-lt-Vourself Spelling (C) $16 

S.A.T. College Board Prep. {01 S89 

Story Builder/ 

Word Master (C)S13, (D)$19 

WhafsDifleren) (C)$13, (D)$19 

Analogies |CI$13, (D)$19 

Preli!ie5(D) S26 



Vocabulary Builder 1 (C)$13, (D)$19 

Vocabulary Builder 2 {Cl$13, (D($19 

Mini-Crosswords (C| $13, (D)$19 

Word Scramble Grades 1-4 (C) $13 

Fishing ForHomonyms(C) $13 

Hidden Words 4 Levels (C) $16 

Snooper Troops #1 (D) $32 

Snooper Troops #2 (D| $32 

Story Machine{D) $23 

Word Race (D) $1? 

Claim 10 Fame/Spons Derby $15 

Crossword Magic (D) $34 

A Ipti abet Arcade (C)$15.(D)$19 

Funbunch (D) 

Elem $25 

Inlermediate $25 

High School (SAT) $26 

Time Bomb (C)$13, (D) $19 

Snake-0-Nyms $25 

Skywriters PoprSpell $25 




/C" — «K=20 ^^ 

^ commodore 

Pre-School 

The Sky Is Falling (CT) $23 

Mole Attack (CT) $23 

Home Babysitter $23 

Math 

Sky Math (C) $12 

Space Division .$12 

Bingo Speed Malh(CT1 $23 

Number Crunch (CT) $27 

Number Chaser $1' 

Number Gulper $1V 



*** BOOKS *** 

KIDS AND THE ATARI $18 

KIDS AND THE VIC $18 

PROGRAMMERS REF. GUIDE(VIC) $14 

ELEMENTARY COMMODORE S14 

COMPUTERS FOR PEOPLE $ 8 

GAMES FOR THE ATARI S 8 

DE RE ATARI $19 

ADVENTURE HINT BOOKS S 8 

6502 ASSEM. LG. PROG $16 

SOME COMMON BASIC BASIC PROGRAMS $14 

YOUR ATARI COMPUTER $16 

ATARI ASSEMBLER— INMAN $12 

ATARI GAMES AND RECREATION $14 

ATARI PILOT FOR BEGINNERS $12 

VISICALC BOOK — ATARI EDITION $14 

ATARI BASIC — R. L. ALBRECHT $ 8 

Computer Outlet 

Park Place — Upper Level 1095 E. Twain — (702) 796-0296 Las Vegas, Nevada 89109 
Call Toll Free 800-634-6766 Order Line 
We accept Major Credit Cards Mon.-Fri. 8 A.M.-6 R M. Sat. 9 A.M.-5 P. M. 



Music 

Rhyme* Pitch $26 

Player Piano (C, D) , , , . - $19 

Keyboard Organ (CD) $19 

Musical Computer— Music Tutor(D),. $13 
Music 1— Terms and Notation (D) . . ..$26 

Advanced Music System (D). _ . .$25 

Music Composer (CT) $25 

Jerry White's Music Lessons (C) $20 

Magic Melody Box .$T4 

Telling Time 

Hickory Dickory (C, D) $13 

Social Studies and Geography 

Earth Science (D) $26 

Flags ol Europe (Dl $19 

Presidentso(lheU.S.(C, D) $13 

Astro Word Search (C| $13, (0) $19 

States and Capitals (C) $12 

European Countries & Capitals (C) . ..$12 
Computer Stocks and 

Bonds (C)$12,(D)$15 

Eiementary BiolOBy(D) $26 

Frogma5ter[0) $19 

Starware(D) $19 

Mapware(D) $19 

British Heritage Jigsaw 

Puzzles .--.$22 

European Scene Jigsaw Puzzles (C) . .$22 
Geograpliy (0) $26 

Programming Techniques 

Pilot (Cons, or Educator) . . (C) $59, (D) $99 

InvilationtoProg #2(C1 $22 

Invitation to Prog. *3(C1 $22 

Tricky Tutorials— Santa Cruz 

TT«1 Display Lists (CD) $1? 

TT #2 Horiz/Verl, Scrolling (C, Dl - . . $17 

TT#3 Page Flipping (CD) $17 

TT #4 Basics of Animation (C, D) , . - $1 7 
TT #5 Player Missile Graptiies (C, D) $24 

TT #6 Sound and Music (C. D) $17 

TT »7 DOS UlHilies(O) $24 

Page 6 S20 

The Next Step $27 

Typing 

Master Type (D) $27 

Touch Typing (C) $19 

Type Attack (CD) $26 

Foreign Languages 

Alan Conversational Languages 

French, Spanish. German, Italian (C) $45 

Astro Word Search [Specify 

Spanish or FrenchI (C) $13, (D)$19 

Music 

VIC Music Composer (CT) $29 

HES Synlhfisound (CT) $49 

Language Arts 

Super Hangman (C) 314 

SimonrHess (C) $13 

Concentration (C) $13 

Home Babysitting $23 

Social Studies/Science 

Visible Solar System $23 

Reaganomics(CT) $27 

Programming Techniques 

Intro to Basic Prog, i $22 

Intro to Basic Prog. II $22 

Programmers aid Cart $45 

Turtle Graphics/Hess (CT) $29 



Jl^ ATARI NEW LOWER PRICES 




TOP SELLERS 



Atari 



1200 XL . Call 
800 48K $489 
400 16K .$209 



410 Becordef . , .$ 72 

810 Disk Drive . . $419 

825 Printer . , .$569 

830 Modem $145 

850 Inlerface $159 

481 Enlertainer $64 

482 Educator S1 10 

483 Programmer $ 52 

484 Communiealor $289 

e53 16KRam S 74 

Thff Bookkeeper Kii $165 

ATARI Software 

CX4104 Mailmg Lisl $ 19 

CX404 Word Processor $102 

CXL4007 Music Composer I 42 

Programming 2 S 3 $ 22 

Cor^versatlonal Languages ...,,- - $ 42 

CX40ie Pilot $ 55 

CX405 Pilot $92 

CXL4003 Assembler Editor J 42 

CX8126 MiCfOSOll Basic $ 62 

CXL4022 PacMan $ 30 

CXB130 Caverns o1 Mars 128 

CXL4020 Centipede - $ 30 

CXL40O6 Super Breaklut $26 

CXL4008 Space Invaders S 26 

CXL40O9 Computer Cdess ,. $26 

CXL4011 star Haiders $30 

CXL4012 Missile Commanci ... , $26 

CXL4013 Asleroids $26 

The Bookkeeper $102 

Home Fiifing Manager $36 

Atari Speed Reading S 54 

My First Alphabet $26 

Juggles House(D.C) $ 22 

Juggles Rainbow ID, Cl . .$ 22 

Home Manager Kit $55 

Family Finance $ 36 

Time Wise $ 23 

Galaxian S 30 

Delender . . $ 30 

Oix J 30 

Dig Dog $30 

ETHomePhone .,., $ 34 

Alan Wiiter $55 

Business & Utilities 

Visicalc $169 

Mail Merge $ 20 

DataPerlecI $ ?5 

Letter Perlecl $105 

TexIWuard ,$ 65 

Datasm65 2.0 $ 59 

File Manager 800 + $65 

Syn Assembler $ 34 

Page 6 $20 

Atari World $39 

KOOS ,,., S 59 

Micropainter S 23 

Color Print S 27 

Lisp Interpreter S 79 

Bishops Sguare $20 

Graphic Master S 27 

Graphic Generator $ 17 

Basic Compiler $ 65 

Computans Financial Wizard S 45 

Color Accountant $ 55 

Datalink S 27 

Filelt2Sysiem $ 34 

Diskelie Inventory System $ 17 

P, M P Properly Management $179 

Programming Techniques 

Display Lisis $ 1' 

Horii^Veil Scroll S 17 

Page Flipping $ 17 

Basics of Animation $ 17 

Player Missile Graptrics $24 

Sound S 17 

Data Files $ 24 



Temple ot Apshai S 27 

Raster Blasler i 20 

Apple Panic $ 20 

Crosslire $ 20 

Thresnold $ 27 

Mousekallaek $ 23 

Kraiy Stiootoul $ 34 

Deadline $ 34 

Tumble Bugs $ 20 

Pool 1.5 $ 23 

Ricochet $ 15 

Empire ol the Overmind $ 23 

Wiz & Princess $ 22 

Mission Asteroid ..,...,...,.$ 17 

Ali Baba& the Forly Thieves $ 22 

The Shanered Alliance $ 27 

Canyon Climber $ 20 

Stioolmg Arcade $ 20 

Pacific Coasi Higttway $ 20 

Clowns & Balloons $ 20 

Preppie $ 20 

RearGuard , . - $ 17 

Lunar Lander . , $ 17 

War $17 

Star Warrior $ 27 

Dragon's Eye S 20 



Crush.Crumblei Chomp $ 20 

Jawbreaker $ 20 

Zofk I , J 27 

Zofkll J 27 

Soltporn Adventure $ 20 

Deluxe Invaders $ 23 

Chicken $ 23 

Nautilus $ 23 

Rescue at Rigel $ 20 

Frogger S 23 

Choplilter S 23 

Curse of Ra $ 15 

Ghost Encounters $ 20 

Ulysses and The Golden Fleece .... $ 23 

Battle of Shilofi S 27 

Tigers in Ihe Snow $ 27 

Traci< Atlack S 20 

Shamus ,S 23 

Picknick Paranoia S 23 

Claim Jumper S 23 

Embargo $ 34 

Firebird $ 34 

Cyclod $20 

Spare Eggs $ 20 

Sneakers $ 20 

Snake Byte $ 20 




*** SPECIALS OF THE MONTH *** 

ELEPHANT DISKS (BOX) $20 

HAYES SMARTMODEM $209 

MOSAIC 32K RAM S 89 

RAMDfSK(128K) $399 

AMDEK COLOR I MONITOR $309 

PERCOM DOUBLE DENSITY DRIVE $515 

NEC 8023A PRINTER $459 

BASIC A + (OSA + INCLUDED) $ 59 

FLIP N' SORT DISKETTE BOX $ 21 

(Holds 50 Diskettes) 
FLIP-SORT CARTRIDGE BOX $ 21 

(Holds 10 Atari Computer Cartridges) 

MOSAIC 64K RAM $149 

80 COLUMN BOARD<ATARI) $279 

ALL APX SOFTWARE $15% TO 20% OFF 

PERCOM SINGLE DENSITY DRIVE $409 

Computer Outlet 

Park Place — Upper Level 

1095 E. Twain — (702) 796-0296 

Las Vegas, Nevada 89109 

caiiToii 800-634-6766 °^'o'my"' 

Information Order Inquiries (702) 369-5523 

We accept Major Credit Cards 

Mon.-Fri. 8 A.M.-6 P.M. 

Sat. 9 A.M.-5 RM. 
Dealer Inquiries Invited 



NEW 

ATARI 



King Arthur's Heir (D) $ 20 

Escape from Vuncan's tsle(D) $ 20 

Crypt of the Undead |0) $ 20 

The Nightmare(D| $ 20 

Danger in Drindisti(D,q $ 15 

Armor Assault (D) $ 27 

Monster Maze (CT) .$ 27 

Alien Garden ICT) $ 27 

Plattermania (CT| $ 27 

David's Midnight Magic |D) $ 23 

StarBlazer(D) $ 22 

Slellar Shuttle (D,C) $ 20 

Genetic Drift |D, C| , . . $ 20 

Labyrinth (D.C) $ 20 

Serpiniine(O) $ 23 

SeaFoii(D) $ 20 

Spell Wizard (0) $ 53 

Sands of Egypt |D) $ 27 

Pool 400 (CT) $ 27 

Speedway Blast |CT) $ 27 

K-ra;yKritters(CT) $ 34 

K-Star Patrol (CT) $ 34 

K-Hazy Anliks(CT) $ 34 

Crossword Magic ID) $ 34 

Master Type . , $ 27 

Gorf (Dl $27. (CT) $ 30 

Wizard Of Wor (D|$17. (CT)$ 30 

Cyborg (Dl $ 23 

Gold Rush (Dl $ 23 

Sandits(D) $ 23 

Way Out (Dl $27 

Fast Eddy(CT) $ 24 

Wo/Id War I (CT) $ 24 

Beanie Bopper(CT) $ 24 

TheCosmic Balance(D) $ 27 

Miner 2049er(CT) $ 34 

Al lac k at E P-CYG-i (D| $22, (C) $ 20 

ChessfD) J 45 

Checkers (D) s 34 

Odin(D| $ 34 

Snooper Troops #1 (D) $ 30 

Snooper Troops #2 (0) $ 30 

Slory l»lachine(D) $ 23 

Face Maker (D) $ 23 

HauntedHill (0)$20.(C)$ 17 

Trivia Trek (D) $20 

Datafink(D) $ 27 

Space Shuttle (D) $ 20 

Jerry While's Music Lessons (0,C) . .S 20 

SwiltyTach Master (D)$20. (C|$ 17 

Apocalypse (D.C) $ 23 

Raptillian(D. C) .- $ 23 

Kid Grid (D,C) $ 20 

Aliencounier(Face Flash) (D.C) $ 26 

TheJ3rGamefChaoe(D, C> $ 26 

GulpfArrow Graphics (DC) $ 26 

Golf Classic'Compubar $26 

Frenzy/Flip Flop(D, C) $26 

Battling Bugs(Concenlration (D, C) . .$ 26 

Sutjmarine Commander (CT) $ 34 

J umbo Jet Pilot (CT) $ 34 

Soccer (CT) $ 34 

Kickback (CT) $34 

Darls(C) $ 22 

Pool(Cl $ 22 

Dominoes and Cribbage(C( $ 22 

Pig Pen (D) $ 20 

StarcroSS(D) $ 27 

Zork IIIiD) - $27 

Journey to Ihe Planets (D, C) $ 20 

fyloonShutHB(D) $ 27 

Moon Patrol (C) $ 17 

Normandie(D, C| $ 27 

Zaxxon (D, C) $ 27 

Jugg(er(D) $ 20 

Survival of the Fittest .$ 27 

Baseball, (D)$23,(C)$ 20 

Sentinel I |D)$23,(C)$ 20 

The Guardian of Gorm . , (Dl $23, (C) $ 20 

Miner 2049er(CT) $34 

Jeepers Creepers (D) $ 20 

Snapper (D) $ 20 

Twerps (0) S 23 

Flip Out (D) $ 20 

The Birth oi the Ptioenix $ 16 

Protector II (D)$23.(C)$ 29 



APPLE 
SPECIALS 

Business 

Scfeenwfiler II S S2 

Visicalc3.3 ..$165 

Visischedule . , , S199 

Visitfena/Visiplot *199 

The Wora Handler S129 

Magic Window ii . _ i 95 

Magic Mailer t 45 

Magic Words S *5 

Real Eslaie Analjzer II S119 

Supercaic ■ .5165 

PFS: Reporl(New) - .$59 

PFS; . S 79 

PFS: Graph S 79 

TheGeneral Manager S 97 

D.B Maslfif - . .$145 

Pascal Programmer S 89 

Pie Writer i 95 

Wordstar J219 

Datafax iiJ9 

Dalalink I 66 

The Home AccouBlanI S 4B 

Payroll Manager --.$199 

Pie Wrilei/Mulli 80 column S 95 

Pro.Easywriter/Mail Combo . $209 

EneculiveBrielrng System S139 

The Sensible Speller S 79 

Mail Merge $159 

Woidslal (French] , $299 

Wordstar ISpanistil $299 

Spellslar $119 

Calcstar . . - $119 

First Class Mail $49 

EZ Ledger % i5 

Ta< Manager i 99 

TheDichonary i 65 

Versawriter Pak t S 27 

Versawritei PaK2 $ 27 

Personal Investor -....*-....$ 95 

General Ledger $239 

Accounts Receivable .^ -i $239 

Accounts Payable $239 

Executive Secretary $159 

Executive Speller S 55 



Utilities 

TASC Compiler $119 

Basic Compiler - $65 

Dala(a« -1139 

Datalink S 65 

Link Video Apple II $105 

Link Video Apple III $139 

Pascal Tutor $89 

Pascal Programmer S 89 

LISA 2 5 S 55 

Bagot Tucks $ 27 

A L D S $89 

SAM S 85 

Super Disk Copy III S 20 

The Artist $ 65 

3.DSupergraphics S 27 

Program Line Etlitor 3 27 



FRIENDLY SERVICE 

COMMODORE VIC 20 
NEW 




Education 




Planetary Guide 


$ 23 


Star Gaiers Guide 


S 22 


Astro Quoles 


$ 17 


Juggles Rainbow 


S 30 


Bumble Games 


S 39 


Bumble Plot 


S 39 


Gertrudes Secrets 


S 49 


ueiliudesPuJjIes 


S 49 


Rocky s Boots 


S 49 


Srsuopcr Troops m 


J 30 


Snooper Troops »2 


% 30 


Story Maker 


i 26 


Face Maker 


S 26 


Compu-Read 


S 23 


Spelling Bee w/Reading Primer 


$ 27 


AlgeOra 1 


$ 34 


Fractions 


S 34 


Decimals 


$ 34 


Master Type 


$ r7 


Type Attack 


S 27 


Wordrace 


$ 17 


Dueling Digits 


$ 20 


SAT Word Attack 


S 34 


New Step Oy Step 


$ 59 


Delia Drawing 


S 45 


Harcourl Braces A T Series 


S 59 



Creative Software 

Black Hole(CTl $36 

Trasliman |CT> $36 

AslroblitKCTl $36 

City Bomber & Minefield (CT) $20 

Apple Panic (CT) $36 

ChoplHier ICTi $36 

Serp8nline(CT) $36 

Videomania(CT1 $36 

Terraguard (CT) $36 

Thorn EMI 

River Rescue (CT) $29 

VIC Music Composer (CT) $29 

Automated Simulations 

Rescue at Higel (C) $20 

Ricochet (C) $15 

Monster Maze (CT) $27 

Syyord o( Fargoat $27 

Spectravlsion 

Cave In(CT) $27 

Number Crunch (CT) $27 

Reaganomics(CT) $27 



Tronlx 

Galactic Blitz (C) $17 

Swarm (C) $20 

Sidewinder (C) $20 

HES Software 

VtCForth(CTl $45 

HES Mon (CTl $29 

Turtle Graphics (CT) $29 

HES Writer (CT) $29 

Aggressor (CT) $29 

ShamusjCT) $29 

Protector (CT) $33 

Synthesound {Music Synthesizer) 

(CT) $49 

Skier (Cl $16 

MazBof Mikor(C) $15 

Tank Ware (C) $15 

Victrek(C|.. , , $15 

Pinball(C) . .$13 

Simon (Cl ..$13 

FuelPirates(C) - . .$13 

PakBomber (C) $13 

Laser Blilz(C) $15 

Tank Trap (Cl , . .$15 

Concentration (C) $13 

0am Bomtjer (C) $13 




*** SPECIALS OF THE MONTH *** 

SLAGH24K MEMORY BOARD — VIC 20 $145 

VERBATIM DISKS (BOX) S 27 

HAYES SMARTMODEM 1200 S499 

WICO TRACKBALL $49 

WICO JOYSTICK $23 

WICO JOYSTICK DELUXE $ 26 

WICO FAMOUS RED BALL JOYSTICK $ 24 

CARDCO 6 SLOT EXPANSION MOTHER BOARD S 79 

CARDCO 3 SLOT EXPANSION MOTHER BOARD $ 39 

CARDRITER LIGHT PEN (VIC 20) $ 29 

US! AMBER MONITOR (12") $169 

KIDS ANDTHE VIC (BOOK) S 18 

KIDS AND THE ATARI (BOOK) $ 18 

IN-HOME'S ATARI 400 KEYBOARD S 99 

Computer Outlet 

=^f';J"°" 800-634-6766 °'tr,t^"" 

Information & Order Inquiries (702) 369-5523 

ORDEBmO INPOHMATION AND TERMS: 

For Fast Delivery send castiier cAtecKs. money orders or direct banh wire trans- 
fers. Personal and company checks atlow 3 weeks to clear, C.O,D. orders ($3.00 
minimum) and I'/aOlall orders over S300. School purchase orders welcomed- Prices 
reflect a cash discount only and are sub/ect to change. Please enclose your phone 
number with any orders. Shipping — Software fSl.SO minimum) Snipping — Hard- 
ware (please call). Foreign orders. APO A FPO orders — SW minimum and 15% of 
ail orders aver $tOO. Nevada residents add 5^/*% sales tax. All goods are new and 
include factory warranty. Due to our low prices, all sales are final- All returns must 
have a return authorization number. Call 702-369-5523 to obtain one before returning 
goods lor replacement. All returned merchandise is sutsiecl to a restocking fee and 
must come with their original packaging in order to be accepted. 

NO returns permitted after n days from shipping date 



^i commodore 
VIC 20 $139 

VIC 1530 Datasetle $ 59 

VIC 1541 Ois)( Drive $299 

VIC 1525 Graphics Printer $329 . 

VIC 12103K Memory Expander $ 34 

VIC 1 1 10 BK Memory Expander $ 52 

VIC1111 16K Memory Expander $ 89 

VIC 1011 RS 232 Terminal Inlertace. .$ 43 

VIC 1211 Super Expander .$59 

VIC 1212 Programmers Aid Cartridge $ 45 
VIC 1213 Vicmon Machine Language 

Monitor S 45 

VL 102 Introduction to Basic 

Programming $ 21 

VT 106A Recreation Pack $ 45 

VT 107 A Home Calculation Pack ...$45 
VT 164 Programmable Character Set $ 12 

VIC 18(XtVicmodem $ 89 

VIC l31IJoyst(ck $ 8 

VIC1312 Game Paddles $ 16 

VM Programmers Reference Guide. .$ 14 

VIC Software 

Avenger $ 23 

Superslot $ 23 

Super Alien S 23 

Jupiter Lander $23 

Draw Pokef $ 23 

Mldnlgtit Drive $ 23 

Radar Rat Race $ 23 

Raid on Fort Knox $ 23 

Sargon II Chess $ 29 

Super Smash $ 23 

Cosmic Cruncher , , , . , S 33 

Gorl $ 29 

Omega Race $ 29 

Money Wars $ 23 

Menagerie $ 23 

Cosmic Jailbreak $ 23 

Clowns $ 23 

Garden Wars $ 23 

SeaWoK S 23 

Adventuretand $ 29 

PirateCove $ 29 

Mission Impossible $ 29 

The Count $ 29 

VoododCaslle $ 29 

TheSky is Falling $ 23 

Mole Attack $ 23 

Bingo Speed Math $ 23 

Home Babysitter $ 23 

Visible Solar System $ 23 

Personal Finance $ 29 

United Microwave 

Spiders o( Mars (CT) $34 

Meteor Run (CT) $ 34 

Amok(C) $ 17 

Alien Btit2|C) $ 17 

Skymatli(C) $ 12 

Space Division (C) $ 12 

SuperHangman(C) $14 

TheAlienfC) $ 17 

3DMaze(C) $ 12 

Kosmic Kamikaze(C) $ 17 

Sub Chase (C) $ 17 

Amok(CT) $27 

Renaissance (CT) S 34 

Alien Blitz (CT| $27 

Cloud Bufsl (CT) $27 

Satellites and Meteorites (CT) $ 34 

Outworld (CT) $ 34 



^^iitti The Computer Outlet is an 

:|^^ f- associate of The Computer 
'^if" Learning Center For Chil 
dren. We are experts in 
educational technology and can custom- 
ize educational software curriculums for 
school districts, inrjividual schools, or by 
the child at home. Please contact us 
about your sollmare and equipment re- 
quirements and feet tree to stop by our 
school in Las Vegas- 

We have one of the world's largest 
educational software inventories featur- 
ing our own Computer Learning Center 
software. 

Ten Little Robots(ATARI| $12.95 

Pre-Scnool Math (ATARI) $19.95 



Three VIC Cartridge Games 
By Creative Software 



Harvey B. 1 Ifrmaii 

Choplifter 

The objective of Choplifter is to 
save lives, specifically the lives 
of hostages trapped behind 
enemy lines. Points are scored 
only when the helicopter you 
are piloting brings men back to 
home base. Destroying the 
enemy is secondary - you do 
what is necessarv to insure the 
safe arrival of your men. 

The pre-game demo has 
some clever graphics - the "i" in 
Tom Griner (he's the program- 
mer) waves at vou, as the hos- 
tages do later. At this point, you 
are given the option of changing 
the default colors by successive 
pressing of any function key 
(not documented). 

When the game begins, 
your helicopter is on its home 
base. Lift up with the joystick 
and flv left toward enemv lines. 
Watch the three-dimensional 
star background and front-line 
pass behind and below', respec- 
tively. Listen to the realistic 
chopper noises. 

The hostages are either 
trapped in houses or are franti- 
cally running around on the 
ground waving to you. Set the 
chopper down carefully, and the 
hostages will climb aboard (16 
max). If you accidentallv land on 
one, you hear a plaintive "blink." 




Evading the hostile tank, the helicopter 
attempts to rescue the waving hostages 
(lower right) in the VIC version of 
Choplifter. 



Lift off and return them to base. 

Sounds easy? Not quite. 
There are hazards to watch out 
for, like enemy tanks, jets, and 
killer satellites. The enemy is out 
to get your chopper, and you 
must either avoid them or de- 
stroy them with your cannon. A 
perfect score results when you 
have returned all 64 men to base 
in the three missions allowed. 

I usually lose too many men, 
but my kids seem to have mas- 
tered the game fairlv quickly. 
Although the game's action 
noticeably slows when too many 
hostages or enemies are in the 
field of view, this game is fun 
and challenging. 

Serpentine 

I played this game on an Apple 
once, and the VIC version ap- 
pears to be identical. You are a 
blue segmented serpent moving 
in an irregular maze. Your twists 
and turns are controlled by a 
joystick. Hostile red segmented 
serpents are after vou and will 
eat you if you're careless. You 
survive by creeping up on them 
from the rear or side, and snip- 
ping off their st^gmented tails. 

When the evil serpent is 
red, vou cannot attack from the 
front or vou will be eaten (lose a 
turn). But if you snip off enough 
of a red serpent, it turns green, 
and you are free to attack it from 
any direction. In fact, at that 
time a successful frontal attack 
awards your blue serpent an 
extra segment. SimiLTrly, extra 
segments are given when you 
eat frogs, which hop around 
randomly on the maze, or the 
eggs laid by enemy serpents. 

There are several complica- 
tions and strategies which make 
the game more interesting. A 
red snake will turn green when 




The swiftly creeping serpents are a blur 
as the}/ flee through the maze in 
Serpentine. ' 

it has fewer segments than your 
blue snake and back again when 
it has more. When snakes lay 
eggs, they lose a segment. If a 
head-on collision with a green 
snake is imminent and your 
snake decides to lay an egg, vt>u 
might find yourself face-lo-face 
with an angry red one. 

My kids enjoyed this game 
more than the other two, and I 
was able to pick up a strategy tip 
from watching them play. They 
sometimes delay the clearing of 
all red snakes from (he board 
until their blue snake lavs an 
egg. Assuming a frog doesn't 
get the egg (frogs love eggs), 
they get an extra turn after the 
board is cleared. 

The game uses color, music, 
and sound effectively. Tension 
builds when the game gets more 
difficult as successive screens 
are cleared, but the points go up 
proportionally. One kid 
suggested a speed-up button to 
help escape tight spots, even if it 
cost penalty points. Overall, we 
found it exciting and engaging. 

Trashman 

In principle, this game is very 

similar to Pac-MiUi. You are at 
the controls of a garbage truck 
riding around town (a maze), 
collecting trash (dots), and 
emptying trash cans (energiz- 
ers). Both activities score points, 
and the object of the game is to 
clear successive screens and 
achieve as high a score as pos- 
sible. Giant flies are continually 
molesting your truck, and you 
must evade them or lose a turn. 



116 COMPUII! Mavl'SS 



Cardco, Inc. announces five All-American ways to 



Expand your VIC 
at affordable prices 




A universal Centronics parallel 
printer interface for the VIC-20 
& C-64 computers. Obeys all 
standard VIC print commands, 
Suggested Retail — S79.95 




The CARDBOARD 3 is a fuse 
protected, economy expansion 
interface-designed to allow the user 
to access more than one of the 
plug-in-type memory or utility 
cartridges now available. It will accept 
up to three cartridges at once. This 
product includes reset button and switches 
Suggested Retail — S39.95 



A light pen for the VIC-20 and C-64 
computers with a switch on the barrel 
and 6 good programs. 
Suggested Retail — $39.95 



All Cardco products are Made in tiie U.S.A. and 
are individually tested to ensure quality and 
reliability. Superior technological engineering 
optimizes the value/performance ratio of all of 
our products. 



The CARDBOARD 6 is a fuse 
protected expansion interface 
designed to allow the user to access 
more than one of the plug-in-type 
memory or utility cartridges now 
available, Additionally it allows switch 
selection of games and other 
programs now available in the 
cartridge format, without the necessity 
of turning the computer off and on 
again, thereby saving a great deal of 
stress on your VIC-20 and on your 
television or monitor. 
Suggested Retail — S99.95 



Specifications and prices subject to change. 



Dealer inquiries invited. 

United States: Cardco, Inc. • 313 Mathewson • Wichita, KS 67214 • (316) 267-6525 

West Canada: LSI Distributing • Attn: Mr. Wong • 2091 W. 61st Avenue • Vancouver, EC. CA V6J 1Z2 • (604) 733-0211 

England & Europe: Audiogenic • fvlartin tVlanary • 34-36 Crown St. • Reading, Berkshire England • (0734) 595647 

East Canada: Hobby Cra1t Canada • 24 Ronson Drive • Rexdols Ontario M9W1 B4 • (416) 241-2661 

®VIC-20 is a registered trademark of Commodore 



After a trash can is emptied, the 
flies change color, and for a short 
time it is safe to counterattack. 
But don't wait too long, or thev 
will revert to their original color 
and revert to their essential 
nastiness. 

This game offers a choice of 
difficulty (or bonus) levels at 
the start, and my kids appreciate 
this feature. They consistently 
play at the highest level, but 
have not lost interest yet. The 
game has good sound effects 
and well-drawn, animated flies, 
especiallv at the beginning 
and when the flies are caught 
and sent back to home base. 1 
also liked the idea of a random 
bonus which appears about half- 
way through a screen to liven 
things up a little. The joystick is 
optional for this program, but 
recommended. 

Among these three games, 
we liked Serpentine the best, then 
Trnahiiin}!, then Chopliftcr. Per- 
sonal taste will be the deciding 
factor, so try them out before 
you purchase, if possible. But if 
you are an inveterate game 
player, you'll probably enjoy all 
of these VIC cartridges; they're 
among the better ones we've 
seen. 

Choplittcr 
Serpentine 
Trashman 

Crcnllvc Softimre 

230 Caribbean Drive 

Sunm/valc, CA 94086 

$45 to S47 © 




Plaiferfi nniat negotiate n maze to pick 
up i^nrha^e in Trashman. 

m COMPUTE! May 1933 



Hescount For 
PET/CBM 
And VIC 

Steve Leth 

One of the facilities available on 
many mainframe computer sys- 
tems is a program profiler- a 
utility that monitors the execu- 
tion of a program and counts 
how many times each statement 
is executed. This information 
can be used in a number of ways 
to assist in the development of a 
new program or the modification 
of an old one. For instance, state- 
ments in a program that are ex- 
ecuted many times are prime 
candidates for various time- 
saving techniques. Speeding up 
a line that is executed a thousand 
times will have a much greater 
effect on a program's total run 
time than doing the same thing 
to a line that is executed only 
once. We'll see more of this in 
an example later on. 

Profiler information can also 
be used for general program 
testing and debugging. Finding 
the cause of an endless loop is a 
lot easier when you know exactly 
which statements are part of the 
loop. Another area of program 
development that is often ig- 
nored is the testing of seldom- 
used paths thrtjugh a program's 
logic. Many a "well-tested" pro- 
gram contains large stretches 
that were never executed during 
its debugging stages. A profiler 
lets you find these unexecuted 
statements and devise input or 
other conditions that will force 
them to be executed. 

Simple To Use 

"OK, sounds great. But 1 don't 
have a mainframe, I've got a 
VIC!" Yes, I know, and so do 
the people at Human Engineered 
Software, who have developed 
Hescount, a BASIC program 
profiler for all versions of Com- 
modore PET/CBM and VIC. 



For the most part, using 
Hescount is pretty simple: you 
load it by running a BASIC loader 
program. As usual, the loader 
resets the top-of-memory pointer 
so Hescount won't be destroyed 
by running your program. Next, 
you load the BASIC program you 
want profiled and type "SYS 0". 

Hescount will now .set up the 
program so that its execution 
can he monitored by hooking 
into the zero-page CHARGET 
routine and reserving memory 
space for the line counts. You 
just run the program as usual. 
While your program is running, 
Hescount will keep track of how 
many times each line is executed, 
placing this count in the space it 
reserved during the initial setup. 

Because Hescoiint's monitor- 
ing takes up some time, your 
program will run about 20 per- 
cent slower than usual. When 
the program is finished, the line 
counts must be extracted from 
Hescouiit's internal format and 
put someplace where you can 
access them. To do this, you 
enter "SYS 0" again. This time, 
Hescount will take the line num- 
bers and the counts and place 
them in a two-dimensional array 
named UQ%. The number of 
elements in UQ'X, will be stored 
in UQ%(0,0), the numbers of 
the executed lines in UQ%{0,i), 
and the number of times that 
line was executed in UQ"'o(l,i). 

Hescount also unhooks itself 
from the CHARGET routine and 
returns vour program to its nor- 
mal state. Now you can take the 
data stored in the array UQ'K) 
and list it on the screen or printer 
or save it on disk for later 
analysis. 

How Hescount Viorks 

Let's look at an example to see 
just what Hescount shows us 
about a program. Program 1, 
called "Dice," is a short program 
that calculates the odds of each 
number that can result when 
two dice are rolled. Just to make 
the program a little more general, 
I've set it up to handle the "odd" 



\/l/^On" PERSONAL 
V I W^U COMPUTER 



(List Price $2991 

SALE! 

$139 



00 



(when you buy 6 tape programs at sale prices) 




• We Love Our Customers 
Our Prices and Service 
Prove It! 

• One Day Delivery Express 
Mail 



Have Commodore 64 Computers In Stock | 



• Commodore 64 Program- 
mers Reference Guides 
Free With Purchase 

• Over 500 Programs To 
Choose From 

• Free Catalogs 



You get the COMMODORE VIC-20 Computer 
for only $139.00 when you buy 6 tape programs 
on sale for only 159.00, These 6 tape programs 
list for 196.00 to $132,00! You can choose one 
of these three tape program packs: 6 GAME 
program pack 159,00 (Alien Invasion, Target 
Command, Artillery, Chase, Snake Out. Caltle 
Round Up). 6 HOME FINANCE program pack 
$59.00 (Check Book, Calculator, The Budgetor, 
Home Inventory, Income Tax, Ulility Bill Saver). 
6 SMALL BUSINESS program pack $5900 (Ac- 
countant, Accounts Receivable and Payable, 
Inventory, Order Tracker, Estimating and 
Bidding, Appointments). 

33K COMMODORE VIC $199 

WITH Vk TIMES MORE POWER 

For only $199.00 you get the COMMODORE 
VIC-20 Computer plus WE ADD 8,000 BYTES 
OF USER MEMORY to give you 2'A TIMES 
MORE PROGRAMMING POWER! This power- 
ful full-sized: extra featured computer includes 
the 6502 microprocessor (LIKE APPLE) 20,000 
bytes ROM with a 16K extended LEVEL II 
Microsoft BASIC, 13,000 bytes RAM, a total of 
33,000 tjytes memory, plug in expandable to 
60,000 bytes, 66 key typewriter professional ex- 
panded keyboard with graphic symbols on 
keys, color command keys, high resolution 
graphics, 512 displayable characters, text 
display is 22 lines 23 characters, sound and 
music, real time, upper lower case, full screen 
editing cursor, floating point decimal and trig 
(unctions, string arrays, scrolling, multi state- 
ment lines, file management. PEEK AND 
POKE. Assembly machine language is 
available. We have easy to use self teaching 
books and programs. Accepts TAPE-DISK AND 
PLUG IN CARTRIDGES, connects to any TV, 
includes AD adaptor, R.F. modulator, switch 
box, self teaching instruction book, comes in a 
beautiful console case. 

41 K COMMODORE VIC $249 

WITH FOUR TIMES MORE POWER 

For only $249.00 you get the 41K COM- 
MODORE VIC with 400% MORE PROGRAMM- 
ING POWER THAN VIC-20! We add 16,000 
bytes user memory to the VIC-20. You gel a 
total of 41,000 bytes memory (20.000 bytes 
ROM, 21,000 bytes RAM and extended LEVEL 
II BASIC) plus all the extra features listed! 

49K COMMODORE VIC $299 
WITH SIX TIMES MORE POWER 

For only $299.00 you get the SUPER 
POWERED 49K COMMODORE VIC with 600% 
MORE PROGRAMMING POWER than VIC.20! 
We add 24, (XW bytes user memory to the 
VIC-20. You get a total of 49,000 bytes memory 
(20,000 bytes ROM, 29,000 bytes RAM and ex- 
tended LEVEL II BASIC) plus all the extra 
features listed! 



TRACTOR-FRICTIOIM PRINTER $399 

This all new COM-STAR deluxe line printer, 
prints 8'*" X 11" leller quality full size, single 
sheet, roll or (an (old computer paper, labels. 
etc. 40, 66, 80, 132 columns Impaci dot matrix, 
bi-directional. 80 CPS. Includes special caoie 
that plugs direct into the VIC-20 printer port — 
no other cosily interface is naedeO' List 
$599.O0Sale$39g0O- 



SUPER 10' COMSTAR PRINTER $499 

Has all the (eatures o( the COM- STAR printer 
shown above, PLUS! 10' carnage lOO CPS, Dot 
addressable bit image grapnics. 23 buffer. 18 
character sets, 40. 48, 66, SO. 96. 132 columns, 
prints true descender, super and subscript, 
underlining. Includes special cable lo plug in- 
to the VIC-20 printer port. List $699 Sale S499. 



60K MEMORY EXPANDER S79 

Allows memory expansion lo 60K total |20K 
ROM and 40K RAM). Has six slols to add six 
cartridges — you can switch select any com- 
bination o( memory or programs. Stop and 
start any program with reset button, you don't 
have to remove cartridges or turn off com- 
puter. This expander is a must lo get the most 
out of your VIC-20 Computer! 



PLAY ATARI GAMES ON VIC-20 $79 

WOW!! Plug in our new "GAME LOADER" and 
you can play all ATARI video game cartridges, 
Activision, Imagic M-Network on your VIC-20 
computer. List $99. Sale $79. 



LOW COST PLUG IN EXPANSION 

Accessories plug In direct 10 this computer, 
extra RAM memory, data cassette, telephone 
modem $99.00, deluxe 80 column printer 
$399.00, 170K disk drive $349,00 all plug in 
direct! You do not have lo buy an expensive 
expansion interface! ! 



WE HAVE THE LOWEST PRICES 

We sell direct to customers and you save the 
profit margin normally made by computer 
stores, department stores and distributors, we 
are willing to lake a smaller margin to develop 
volume. WE LOVE OUR CUSTOMERS - OUR 
PRICES PROVE IT! 



GET $150 FREE SOFTWARE 
WHEN YOU BUY A 
COMMODORE 64 COMPUTER! 



IMMEDIATE REPLACEMENT WARRANTY 

If your computer tails because ol warranty 
delect within 90 days from date of purchase, 
you simply send your computer to us via 
United Parcel Sen/ice prepaid. We will "im- 
mediately" send you a replacement computer 
at no charge via United Parcel Service prepaid. 
This warranty applies to all products we sell 
because WE LOVE OUR CUSTOMERS!! 

15 DAY FREE TRIAL 



D 
D 

n 
□ 

D 
D 
D 

□ 



DON'T MISS THIS SALE-ORDER NOW 

VIC-2D lor only $139. plus 
$59. lor 6 pack ol programs 

Spttcify pack wanted . 

33K-VIC for only $199. 
41K-VIC (or only $249. 
49K-VIC lor only $299. 
Tractor Friction Printer $399. 
Super 10' Printer $499. 
SDK Memory Expander $79. 
Game Loader— Atari $79. 



We ship C.O.D, and honor Visa and Master 

Card. 

Name 



Address. 



City. 



_ZipCode 



State 

a VISA D MASTERCARD D C,0,D. 

Credit Card No. 

Expiration Date _ 



Add SIO.CX) (or shipping, handling and in- 
surance. Illinois residents please add 6% 
tax. Add $20.00 (or CANADA. PUERTO RICO, 
HAWAII orders. WE DO NOT EXPORT TO 
OTHER COUNTRIES. 

Enciose Cashiers Check, Money Order or 
Personal Check. Allow 14 days for delivery. 2 
to 7 days for phone orders, 1 day express 
mail! 
Canada orders must be in U.S. dollars. 



ENTERPRIZES (factory direct) 

BOX 550, BARRINGTON, ILLINOIS 60010 
Phone 312/382-5244 to order 

MOV1983 COMPmil 



VIC-20* OWNERS 

A nnouncing the CB-2! 



Expand your System with these 
Exclusive Factory Direct Products 





The CB>2 Is a complete hardware and software package 
Ihat allows you to easily and etiiciently make a back-up 
copy ol your valuable sodware library. Now you can 
protect your investment! 
Unique features: 

• Allows connection (or one or two Datasetle" recorders 
(two recorders required tor simple back-up copies). 

• Exclusive slale-of-the-arl circuitry Ids you actually hear 
and see tape data being loader] or saver). 

• Special wave shaping circuitry makes a back-up copy 
as good or better Iban the original. 

• CB-2's Super Block Saver sollware and Interface card 
allow you to make a back-up copy of your cartridge 
programs, 

CB-2 HECEIVES OUR HIGHEST RATINGI 
CB-Z Assembli!d $8935 



A. The Dataipan'2fl expansion boarrj is Ibe cornerstone lor 
expanding the VIC-20 to its maximum capabilities Unlike 
olticr expansion boards, the Dalaspan-M has the lollowing 
eiciuslve features: 

• Five slot, rotary iwflch selectable expansion board. 

• flolary s*ilch allows control between computer cariridgES 
(memory expansion. Programmer's Aid*. Vic-Mon* and other 
utilities) and game cartridges. 

• Dataspa n-20 a Hows stacking of memory cartridges up to 29K 
in BASIC and 40K in machine language 

• Fully hulfeicd by five hi-lecOnology integrated circuits They 
help pf event erratic operation and loss ol etata common m 
typical unbuflered expansion boards and isolate the VIC's' 
micrQ-processor from accidental damage 

• Highest quality circuit board with gold contacts througtiout. 

• Fused to protect the VIC-20* power supply 

• Waster reset button eliminates turning computef off and on. 

• Auxiliary power supply jack and write proleclion on one slot. 
DATASPANKH SSSaS 

DATASPAN Assembled $S4.95 



B. RAMralder 

• Makes your 3K or Superexpaniier' 
cartridge a full 4K HAM 

• Recaptures your RAM for BASIC and 
moves it into Expansion memory 
(lower half of Blocks 1.2, or 3) 

RAMralder Kit S24.9S 
HAMralder Assembled S34.9S 
Kits lor Exparienced Builder only! 
All assembled urtits have full 90- 
Day Limited Guarantee. 
'Trademark Commodore Bus, Macliines 



C. RAMcharger 

• Turn your Commodore gK cartridge 
into a full 16K cartridge. 

• Full address switching capabilities. 

• Sockets allow future EPflOM 
substitution 

RAMcharger Kit S31j95 
Digital I Interface Systems Co. 
P.O. Box 8715 
Portland, Oregon 97207 
(503) 295-5890 



D. BREEZE MACHINE 

• Extend the life of your computer 

wilfi our Whisper Ouiel FAN. 
BREEZE MACRINE Assembled ^9S5 
We welcome your calls tor more 
inlormation. Remember, we're 
VIC-20' enthusiasts too! 

TERMS: 

^o COD Orders 

Shipping and Handling S3.(]0 

VISA/MASTERCARD - Add 2FI, 

Most orders shipped within 48 hours 

(Personal checks — allow 2 weeks.) 




corders.carstere ^^^ 
^Se record-. 
machines. 






b^^ A .,„i^ 6 relav outputs & 2 

r-°'='''™f4rr *!^c THE BRANDS Wt 3«^ „,,.as..er 

ANU "'-'? NiKM pioiKier coirnnodore ^"^ ™ 

Sony Panasonic T,^,o.Tecbnica ^^2- ■" "» "- 

JVC Jensen _ 

Technics ^^ 

Alvo 



machines. ^S^e^^ 

program (<^^^%^ ftssrX^iales.^^^- ■ j^^guires 



120 



„. QioSt^on-Fri 
^ Hours.^W^^^^5Sat, 

COMPVIE May49B3 



dice, with other than six sides, 
used in many role-playing 
games. Table 1 shows the output 
for a pair of ten-sided dice. 
Notice that it look 223 jiffies (just 
under four seconds) for the pro- 
gram to run. 

If we run Dice under Hes- 
count, and then enter SYS to 
collect the line counts into the 
array UQ%, the results can be 
printed using the routine that 
starts at line 1000 in Dice. This 
output is shown in Table 2: a 
table of line numbers and how 
many times each one was ex- 
ecuted. We can see that there 
are only two points in Dice worth 
trying to speed up: lines 40 and 
50, which execute 100 times each, 
and lines 70 and 80, which ex- 
ecute 19 times each. We can pick 
up a little speed by combining 
lines 20 through 50 into one line. 
(See Program 2.) 

However, most of the time 
saving came from moving the 
expression "(S'T'2)" from inside 
the FOR loop to line 55. The run 
time is now down to 149 jiffies 
(about two and a half seconds); 
any other changes I could think 
of just made the run times 
longer. Although this example is 
trivial (it's pretty obvious which 
statements will execute the 
most), you can see how this 
whole process would be very 
effective with a large program. 

A Few Limitations 

If you are getting the impression 
that I like Hescotinl, you're right. 
It is useful, reasonably simple to 
use, and very nicely docu- 
mented. The manual that comes 
with it is easy to read and quite 
complete. There are actually two 
manuals, totaling 25 pages. The 
first is a User Manual, which 
describes how to load and use 
Hescouiit and how to access the 
line counts. A demo program, 
included on the tape or disk, 
acquaints you with Hescouiit's 
operation. 

The second book is the more 
technically oriented Progmni 
Manual. This manual contains 



COM-STAR F/T 



Tractor 
Friction 
Printer 



only 



COMSTAR P^r 



FREE 

Box of printer paper and 
Idemo tape with purchase.! 



• Lowest price quality tractor triction printer in the U.S.A. • Fast 80 characters per second 
40, 46, 66, 80. 96, or 132 characters per line spacing • Prints labels, letters, graphs, and tables 
• List your programs ■ Print out data trom modem services 



Deluxe 

COMSTAR Frr 

PRINTER — $299.00 

The Comstar Is an excellent addition to any 
microcomputer system, (Interfaces are 
available tor Apple, VIC-20, Commodore'64, 
Pet, Atari 400 and 800, and Hewlett Packard] At 
only $299. the Comstar gives you print quality 
and features found only on printers costing 
twice as much. Compare t hese features. 



• BI-DIRECTIONAL PRINTING with a LOGIC 
SEEKING CARniAGE CONTflOL (or higher 
through-put in actual text printing, 80 
characters per second. 

• PRINTINO VERSATILrTY: standard 96 ASCII 
character set plus blocK graphics and Interna- 
tional scripts. An EPROIM character generator 
includes up to 224 characters. 

• INTERFACE FLEXIBILrTY: Centronics Is 

standard. Options include EIA RS232C, 20mA 
Current Loop, (Add »20,00 for RS232) 

• LONQ UFE PRINT HEAD: 100 million 
character life expectancy, 

• THREE SELECTABLE CHARACTER 
PrrCHES: • 10, 12 or 16.5 charbcters per Inch. 
132 columns maximum. Double-width font also 
is standard tor each character pitch. 

• THREE SELECTABLE LINE SPACINOS: 6, S 

or 12 lines par Inch. 

• PROORAMMABLE LINE FEED: program- 
mable length from 1/144 to 255/144 Inches, 



• VERTICAL FORIUAT CONTROL: program- 
mable form length up to 127 lines, useful tor 
short or over-sized preprinted forms. 

• FRICTION AND TRACTOR FEED: will accept 
single sheet paper. 

• 224 TOTAL CHARACTERS 

• USES STANDARD SIZE PAPER 

II you want more try — 

Premium Quality 

COIMSTAR FrrSUPER-10" 

PRINTER - $389.00 

More Features Than MX-80 
For $250 Less 

For $3S9,00you get all of the features of the 
Comstar plus 10" carriage. 100 cps, 9 x 9 dot 
matrix with double strike capabliltv for 18 x 18 
dotmatrlx. High resolution bit Image (120 x 144 
dot matrix), underlining, backspacing, 2,3K 
buffer, left and right margin settings, true 
lower descenders, with super and subscripts, 
and prints standard, italic, Block Graphics, 
special characters, plus 2K of user definable 
characters. For the ultimate In price per- 
formance the Comstar Frr Super 10" leads the 
packl 

WE HAVE THE LOWEST PRtCES 

We sell to customers and you save the profit 
margin normally rnade by computer stores, 
department stores and distributors, we are 
willing to take a smaller margin to develop 
volume. WE LOVE OUH CUSTOIi^ERS - OUR 
PRICES PROVE ITI 



Double 

Immediate Replacement 

Warranty 

We have doubled the normal 90 day warranty 
to 1B0 days. Therefore If your printer fails 
within "180 days" from the date of purchase 
you simply send your printer to us via United 
Parcel Senrice, prepaid. We will llvlMEDIATELY 
send you a replacement printer at no charge 
via United Parcel Service, prepaid. This warran- 
ty, once again, proves that WE LOVE OUR 
CUSTOMERS! 

15 DAY FREE TRIAL 

OTHER OPTIONS 

Extra Ribbons * 5.95 

Roll Paper Holder 32.95 

Roil Paper 4,95 

50O0 Labels 19.95 

1 100 Sheets Fan Fold Paper 13.95 

Add t20,00 shipping, handling and insurance. 
Illinois residents please add 6% tax, Add 
$40.00 for CANADA, pyERTO RICO, HAWAII. 
ALASKA orders, WE DO NOT EXPORT TO 
OTHER COUNTRIES. Enclose cashiers check, 
money order or personal check. Allow 14 days 
for delivery, 2 to 7 days lor phone orders, 1 
day express mall available! I Canada orders 
must be in U.S. dollars. 



ENTERPRIZES i»cTo«y "becd 

BOX S50, BARRINOTON, ILLINOIS 00010 
Plwne 312/302-5244 to order 



COMSTAR Frr 

«^000E:F='0IH I J HCI_MlvJDFCiFL'S-rLJVW>< YZ SLti c: ci 

ABCDEFGHIJKLMN0PQRSTUVW)<YZabcdef9hi J klmnopqrstuvw>;y 2 1234567890 



-F -gl-ii jj< 



8UPER-10" ABCDEF'CSFH ZaKI_Mlsiai 

ABCOEF&HIJKLHNOPQRSTUVUXYZ 12: 



•CaRSTLJVMXVZ 



1*1/1983 COMFWI! 121 



Program 1: Dice 



1 RE11 ********* DICE *»***#*** 

2 REM ** UNHuDIFIEB PROGRAM ** 

5 INPUT "rJUIMEER OF SIHES'SS 

6 Ti$="00t3eei0" 

7 PRINT ;PRINT"THERE ARE "£t2" POSSIBLE COMB I NftT ONS "■ PRINT 
18 DIMC<2*S> 
20 F0RI=1T0S 
30 F0RJ=1T0S 

40 C'::i+j>=C';i+j>+i 

50 NEXT; NEXT 

t-0 F0RI=2Tn2*S 

70 PRINTI,C<I>,Ca>/''CSt2) 

SO NEXT 
S5 PRINT 

90 PR I HT " EXECUT I ON TOOK" ; T I ; " J I FF I ES " 

100 END 

1 000 DEFFN2 ■: ft >=ft- i fi<:0 > *655e3 

1010 0P.EN4..4:pRIHT#4.."LINE TIMES EXECUTED" 

1020 FORI = lTCiUQKi;0..0:> 

1 030 Pl=:l NT#4 .. FNZajQj; C 8,. I > > .. FNZ<UQJi( 1 , 1 > > : NEXT ■ CL0SE4 

Program 2: Modified Dice 

1 REM ******* DICE ******** 

2 REM ** MODIFICATION #3 ** 

5 INPUT'THUMEER OF SIDES"; S 

6 TI«= "000000" 

7 PR INT "THERE ARE "ST2" POSSIBLE COMBINFlTONS" 
10 DINCC2*S:) 

30 FORI=lTOS:FORJ=lTOS:Ca+J>=C<:i+J)+l :NEXT:NEXT 

55 31=S1£ 

60 F0RI=2T02*S 

70 PRINTI,C<I>,C<I)/SI 

80 NEXT 

90 PRINT"EXECUTION TOOK"Tr- JIFFIES" 

100 END 

1000 DEFFNZ<fl>=fl-<ft<0)*65563 

1010 0PEN4,4:PRINT#4."LINE TIMES EXECUTED" 

1028 FORI=lTOUQK<e.0> 

1 038 PR I NT#4 . FNZ ( UQ?i < . 1 :> > , FNZ < UQ^ < 1 , 1 > > : NEXT : CL 0SE4 



Table 1: 

Output Of A Pair Of 
Ten-Sided Dice 

NUMBER OF SIDES? 10 
THERE ARE 100 POSSIBLE 
COMBINATIONS 



2 


1 


.01 


3 


2 


.02 


4 


3 


.03 


5 


4 


.04 


6 


5 


.05 


7 


6 


.06 


8 


7 


.07 


9 


8 


.08 


10 


9 


.09 


11 


10 


.1 


12 


9 


.09 


13 


8 


.08 


14 


7 


.07 


15 


6 


.06 


16 


5 


.05 


17 


4 


.04 


18 


3 


.03 


19 


2 


.02 


20 


1 


.01 



EXECUTION TOOK 223 JIFFIES 



Table 2: 

Results Of Line Counts 

LINE TIMES EXECUTED 

1 
2 
5 
6 
7 

10 1 

20 1 

30 10 

40 100 

50 100 

60 1 

70 19 

80 19 

85 1 

90 1 

100 1 

1000 

1010 

1020 

1030 



information on how to customize 
Hescount, how it works "under 
the hood," and also includes a 
complete assembly listing. 

Of course, Hescount does 
have a few kinks. The means of 
accessing the line counts is some- 
what clumsy but it is well 



explained. Hescount also has 
some limitations involving mixed 
BASlC/machine language pro- 
grams, some odd types of FOR/ 
NEXT loops, and utilities that 
also use the CHARGET routine 
(such as Skyles Electric Works' 
Disk-0-Pw). Fortunately, all 
these problems are minor and 
are discussed in the documenta- 
tion. Versions for PET/CBM 
ROMs 2, 3, and 4 and the VlC-20 
are included, along with a short 
demo program. All in all, Hes- 
count is a good program to add 
to your software development 
toolkit. 

Hescount 

Humetn Engineered Software 

71 Park Lane 

Brisbane, CA 94005 

$23.95 Tape 

$26.95 Disk O 



Micro-Systems' 
VIE Cartridge 
VIC To IEEE 

Interface 

Karl Kelley 

Have you wanted to add the 
disk drive for your other Com- 
modore computer to your VIC? 
If you are like many Commodore 
owners, you may have already 
owned a 4016, 4032, or 8032 PET/ 
CBM computer along with a 
disk drive and a printer. 

Micro-Systems Develop- 
ment, Inc. is marketing an inter- 
face cartridge which converts 
the user port to IEEE protocol 
and allows direct access to IEEE 
devices of all kinds. My particu- 
lar interest right now is the IEEE 
disk drives and printers man- 
ufactured by Commodore - the 
ones I already own. 

1 ordered the VIE Cartridge 
from Micro-Svstems, and as soon 
as I received it, I opened the 
durable plastic case to check out 
the insides. 

Inside were four chips and a 
female edge connector, mounted 



122 COMPuni May 1983 



Mayden, 



H AYDEN . . . the source 




new! VIC™ Revealed (Hampshire) 
An invaluable probe of the VIC's hard- 
ware capabihlies. II cavers the 6502 
microprocessor. VIC systems softvvarE, 
video interface chip, I/O ports and I/O 
processing and functions, as well as 
outstanding VIC features such as its 
programming power, superior game 
and graphics capability, and unique I/O 
capabilities that are not even explained 
in Commodore manuals. Also contains 
a complete instruction se! for the 6502, 
as well as options for using machine 
code subroutines in VIC basic pro- 
grams. #1058, $12.95 



lieml CP/MTM Revealed (Dennon) 

Intended for CP/M users interested in 
improving their skills, this is a guide to 
the CP/M operating system: the console 
monitor (CCP). the system manager 
(BDOS). and the input/output driver 
package (CBIOS). Provides a clear 
understanding of (he data structure of 
the CP/M disk and other essentials for 
using CP/M effectively. Covers buying 
CP/M, boating up, logging in, changing 
memory size, mapping disk space, call- 
ing all programs, and more. #5204, 
$13.95 



new! Basic AppIeTM BASIC (Coan) 
A complete guide to Applesoft BASIC, 
Takes you from beginning concepts, 
such as entering data and obtaining 
output, and planning programs, to more 
advanced topics such as numeric and 
string arrays, and sequential and ran- 
dom access files. Alternate techniques 
for programming In Apple Integer 
BASIC are also covered, as well as low- 
resolution and high-resolution graph- 
ics. #5626, $12.95 

Apple L!> a registered trademark of .^pple Computer Co 
modorG Business Machifies, Inc. CP^M is a regislercil 
with Haytien Book Company, inc. 



New! Create Word Puzzles With 
Your Microcomputer (Mau) Create 
your own letter inserts, acrostics, 
cryptograms, word-finds, quote-falls, 
fill-ins, and other word puzzles. Con- 
tains BASIC programs for producing 
blank puzzles or printouts, following 
magazine format. Provides complete 
information for establishing and main- 
taining word and quotation files, tech- 
niques for producing complex puzzles, 
and serves as a tutorial on managing 
large text data bases. #6251, $14.95 

new! How to Cope With Computers 

(Logsdon) An entertaining, yet 
informative discussion of the impact of 
computers on our daily lives and the 
future of our society. Includes a brief 
history of the computer, explanations of 
hardivare and software, and an intro- 
duction to programming in BASIC. Pro- 
vides an overview of computer career 
opportunities. #5193, $7.95 

Introduction to Computer Anima- 
tion (Wadsworth) Now you can pro- 
duce amazing computer graphics — 
even if you can't draw a straight line. 
Learn how to draw lines and shapes, 
make graphs, draw pictures, and even 
do animation with such popular micro- 
computers as the Apple II. TRS-80. and 
the PET. This book takes a step-by-slep 
approach to learning how to use low- 
resolution graphics, including many 
program listings that illustrate graphic 
techniques using a minimum of mathe- 
matics. The author also shows how 
color and sound can be used in such 
programs as creating a deck of cards, 
making a clown wink his eye, and 
"coaching" an interactive football 
game. #6279, $9-95 

. Inc. PET and VIC are registered tradetliapks of Com- 
Irademark of Digital Research Corp. None is affiliated 



PETTM Graphics {Hampshire) 
Officially approved by Commodore for 
use with the PET. Instructs the PET 
user on how to program graphics 
displays. Contains a collection of 
BASIC and machine-language subrou- 
tines that enable the PET owner to write 
more efficient programs. Provides a 
wide range of normally unavailable 
graphic functions. #1051, $18.75 
Available on PET disk. #11620, $25.00 

Available at your local computer store or 

I^^H Order by Phone 
LmhI 1-800-631-0856 

operator CO 53 
In N| call 201-843-0550, ext. 382 



Mail to: 



Hayden Book Company, Inc. 
Dept. # CO 53 
50 Essex Street 
Rochelle Park, NJ 07662 

Please send me the item(s) indicated below 
by code number, 1 understand that if I am nol 
completely 5,itisfietl, I may return the bDok(sl 
within 10 days For a complete refund. We pay 
postage and handling. Residents of NJ and CA 
must add sales lax. 

D Enclosed is my Check or money order. 
Bill my n Visa C MasterCard Exp 



Name 



Addr 



Citv 



Slate/Zip 



Visa/MaslerCard « 



Signature 



on a good quality, solder-dipped 
printed circuit board with two 
male edge connectors. The large 
edge connector plugs into the 
VIC user port. The female con- 
nector mounted on the PC board 
is a straight through extension 
of the user port lines. This means 
that use of the VIE cartridge does 
not restrict one from later expan- 
sion. The smaller male edge con- 
nector is that sorely needed IEEE 
port designed to mate with 
Commodore's P/I cable. 

Note: Though the device is 
extremely well constructed, care 
must be used when plugging it 
into the VIC and especially when 
plugging additional cartridges 
into the VIE, Remember, it is 
only a PC board and cannot be 
subjected to excessive flexure. 
The safest approach is to plug 
the other cartridge into the VIE 
before plugging the VIE into the 
VIC. 

The instructions consist of 
one typewritten page with a 
brief explanation of the device 
and instructions for enabling/ 
disabling the interface software. 
The instructions are entirely 
adequate. 

Once installed, the iiiterface 
can be enabled via 

SYS40000 

This actuates the approxi- 
mately IK EPROM onboard soft- 
ware. Once enabled, the inter- 
face can be disabled by any one 
of the following: 

"RESTORE" 

Software BRK 

VIC Power Off 

SYS64850 (the exit routine) 

Recall that VIC BASIC is 
really a modification of PET 
BASIC 3,0 and does not contain 
the direct disk commands of 
BASIC 4.0 such as DLOAD, 
DSAVE, etc. So users who have 
become "dependent" on BASIC 
4.0 will have to re-leam the syn- 
tax of disk operations from the 
earlier BASICs. For example, to 
save a program under the name 
TESTPROG on drive 1, execute 
the following: 

124 COMPUTH MOY1983 



OPENl,8,15,"Il":SAVE 
'TESTPROG",8:CLOSEl 

Of course, initialization is 
not required on the 8050 drives, 
and if the disk has previously 
been initialized, the OPEN and 
CLOSE statements are not 
necessary. 

File handling is straightfor- 
ward and identical to PET BASIC 
3.0. Again, BASIC 4.0 users will 
miss the random file commands 
available in BASIC 4,0, but for- 
tunately, the RANDOM 1,0 pro- 
gram {in BASIC) on the Commo- 
dore DEMO disk can be copied 
directly for use on the VlC-20. 

There are a few things to 
watch out for while using the 
VIE. On the larger Commodore 
machines, the IEEE port is part 
of the MAIN LOGIC ASSEMBLY 
and cannot be enabled/disabled 
at will. Accidentally disabling 
the VIE when files are OPENed 
on the disk or printer can cause 
loss of data. The convenience of 
the RESTORE (warm start) key 
is now an albatross. If you are 



doing disk operations and hit 
the RESTORE key (disabling the 
VIE) while disk files are OPEN, 
you have accomplished the same 
thing as unplugging the P/I cable. 
Under certain circumstances, 
this could also result in lost data. 

Likewise, printer format 
commands will be lost if the VIE 
is disabled. This is not a disaster, 
but it is inconvenient, I have 
learned to set off these format/ 
control commands in routines or 
programs on their own for quick 
recovery. 

The device performs well 
and in accordance with the man- 
ufacturer's specifications. At 
$79,95, the VIE Cartridge is a 
valuable addition to the VIC for 
users who already own Commo- 
dore disk drives and/or printers, 
and for anyone contemplating 
using the VIC as an IEEE con- 
troller, 

Micw-Systeius Development , Inc. 
nW5 shady Trail, Suite 103 
Dallas, TX 75229 
$79.95 O 



America's # 1 Software Dealer 



Pick A Program. Any Program. 
At A Software City Store! 

•Programs 'Books -Magazines 'Peripherals -Disks •Accessories 

SOFTWARE AtWAYS DISCOUNTED*. 

Now you can browse througli thousands of programs for your per- 
sonal computer — at Software City, your program discount center. 
When you need software for business, education, entertainment, 
utility or fiome management. Software City has a program for you. 



MT. KISCO, NY 

187 Main St. (914)666-6036 

FOREST HILLS, NY 

113-01 Queens Blvd. (212)261-1141 

PINE BROOK, NJ 

101 Route 46 East (201)575-4574 

TEANECK, NJ 

161 Cedar La, (201)692-8298 

SUMMIT, NJ 

5 Beechwood Rd. (201)273-7904 

MONTVALE, NJ 

147 Kinderkamack Rd. (201) 391-0931 

GREEN BROOK, NJ 

60 Route 22 West (201) 968-7780 

FAIRVIEW, NJ 

251 Broad Ave. (201)943-9444 

PRINCETON, NJ 

33 Witherspoon St. (609)683-1644 



MIDLAND PARK. NJ 

85 Godwin Ave. (201) 447-9794 
RICHMOND, VA 

9027 Quioccasin Rd. (804) 740-8400 



Coming soon: 

Manhattan, NY 
Springfield, MA 
Detroit, Ml 
Red Bank, NJ 
Columbus, OH 



White Plains, NY 
Stamford, CT 
West Chester, PA 
Cherry Hill, NJ 
Sarasota, PL 
Tampa, PL 



5^^ 



Franchises for retail stores. Approxim'ate total investment, $30-35,000. 

Write Software City, PC Box 313, Closter, NJ 07624. Offering by prospectus only. 



AARDVARK - THE ADVENTURE PLACE 
TRS-80 COLOR COMMODORE 64 VIC-20 SINCLAIR/TIMEX TI99 



WE CARRY MORE THAN ADVENTURESII 

MAXI-PROS WORD PROCESSING t*^^ 

The easiest to use word processor that I 
know of. Has all the features of a major word 
processor (right and left margin justification, 
page numbering, global and line editing, single, 
double, triple spacing, text centering, etc.) at 
a very cheap price because we wrote it in 
BASIC. Includes 40 page manual and learning 
guide. Easilv modified to handle almost anv 
printer combination. Available on disk or tape 
for VIC20, COMMODORE64, and TRS-80 
COLOR computer. Requires 13k RAM on 
Vic, 16k EXTENDED on TRS-SO COLOR. ^^ 
SI 9.95 on tape $24.95 on disk. ^^ 

GENERAL LEDGER - Complete bookkeep- 
ing for a small business. Disk required. For 
Vjc20 (13k), Commodore64, TRS-80 COLOR 
(16k EXTENDED). $69,95 (Send $1.00 for 
manual before ordering.) 




LABYRINTH - 16K EXTENDED COLOR 
BASIC — With amazirvg 3D graphics, you fight 
your way through a maze facing real time 
monsters. The graphics are real enough to 
cause claustrophobia. 

Similar game for Timex/Sinclair 16k - hunting 
treasure instead of monsters $14.95. 




ADVENTURE WRITING/DEATHSHIP by 
Rodger Otsen — This is a data sheet showing 
how we do it. It is about 14 pages of detailed 
instructions how to write your own adven- 
tures. It contains the entire text of Deathship. 
Data sheet - $3.95. NOTE; Owners of TI99, 
TRS-80, TRS-80 Color, and Vic 20 computers 
can also gel Deathship on tape for an addi- 
tional $5.00. 

Dealers— We have the best deal going for you. 
Good discounts, exchange programs, and fac- 
tory support. Send for Dealer Information. 
Authors-Aardvark pays the highest commis- 
sions in the industry and gives programs the 
widest possible advertising coverage. Send a 
Self Addressed Stamped Envelope for our 
Authors Information Package, 



ADVENTURES — Adventures are a unique 
form of computer game. They let you spend 
30 to 70 hours exploring and conquering a 
world you have never seen before. There is 
little or no luck in Adventuring, The rewards 
are for creative thinking, courage, and wise 
gambling — not fast reflexes. 

In Adventuring, the computer speaks and 
listens to plain English. No prior knowledge 
of computers, special controls, or games is re- 
quired so everyone enjoys them— even people 
who do not like computers. 

Except for Quest, itself unique among Ad- 
venture games. Adventures are non-graphic. 
Adventures are more like a novel than a comic 
book or arcade game. It is like reading a par- 
ticular exciting book where you are the main 
character. 

All of the Adventures in this ad are in Basic. 
They are full featured, fully plotted adventures 
that will take a minimum of thirty hours (in 
several sittings) to play. 

Adventuring requires 16k on Sinclair, TRS- 
SO, and TRS-80 Color. They require 3k on OSI 
and 13k on VIC-20. Sinclair requires extended 
BASIC. Now available for TI99. 



TREK ADVENTURE by Bob Retelle - This 
one takes place aboard a familiar starship and 
is a must for trekkies. The problem is a famil- 
iar one — The ship is in a "decaying orbit" 
(the Captain never couid learn to park!) and 
the engines are out (You would think that in 
all those years, they would have learned to 
build some that didn't die once a week). Your 
options are to start the engine, save the ship, 
get off the ship, or die. Good Luck. 

Authors note to players — 1 wrote this one 
with a concordance in hand. It is very accurate 
— and a lot of fun. It was nice to wander 
around the ship instead of watching it on T.V. 

DERELICT by Rodger Olsen and Bob Ander- 
son — For Wealth and Glory, you have to ran- 
sack a thousand year old space ship. You'll 
have to learn to speak their language and 
operate the machinerv they left behind. The 
hardest problem of all is tojive through it. 

Authors note to players — This adventure 
is the new winner in the "Toughest Adventure 
at Aardvark Sweepstakes". Our most difficult 
problem in writing the adventure was to keep 
it logical and realistic. There are no irrational 
traps and sudden senseless deaths in Derelict. 
This ship was designed to be perfectly safe for 
its' builders. It just happens to be deadly to 
alien invaders like you. 

Dungeons of Death - Just for the 16k TRS- 
SO COLOR, this is the first D&D type game 
good enough to qualify at Aardvark. This is 
serious D&D that allows 1 to 6 players to go 
on a Dragon Hunting, Monster Killing, Dun- 
geon Exploring Quest. Played on an on-screen 
map, you get a choice of race and character 
(Human, Dwarf, Soldier, Wizard, etc.), a 
chance to grow from game to game, and a 15 
page manual. At the normal price for an Ad- 
venture (S14.95 tape, $19.95 disk), this is a 
giveaway. 



PYRAMID by Rodger Olsen - This is one of 
our toughest Adventures. Average time 
through the Pyramid is 50 to 70 hours. The 
old boys who built this Pyramid did not mean 
for it to be ransacked by people like you. 

Authors note to players - This is a very 
entertaining and very tough adventure. I left 
clues everywhere but came up with some in- 
genous problems. This one has captivated 
people so much that I get calls daily from as 
far away as New Zealand and France from 
bleary eyed people who are stuck in the 
Pyramid and desperate for more clues. 

MARS by Rodger Olsen — Your ship crashed- 
on the Red Planet and you have to get home. 
You will have to explore a Martian city, repair 
your ship and deal with possibly hostile aliens 
to get home again. 

Authors note to players — This is highly 
recommended as a first adventure. It is in no 
way simple— playing time normally runs from 
30 to 50 hours — but it is constructed in a 
more "open" manner to let you try out ad- 
venturing and get used to the game before 
you hit the really tough problems. 




QUEST by Bob Retelle and Rodger Olsen - 

THIS IS DIFFERENT FROM ALL THE 
OTHER GAMES OF ADVENTURE!]!! It is 
played on a computer generated map of 
Alesia, You lead a small band of adventurers 
on a mission to conquer the Citadel of Moor- 
lock. You have to build an army and then arm 
and feed them by combat, bargaining, explora- 
tion of ruins and temples, and outright ban- 
ditry. The game takes 2 to 5 hours to play 
and is different each time. The TRS-80 Color 
version has nice visual effects and sound. Not 
available on OSI, This is the most popular 
game we have ever published. 

32K TRS SO COLOR Version $24.95, 
Adds 3 second level with dungeons and 
more Questing. 

PRICE AND AVAILABILITY: 

All adventures are $14.95 on tape. Disk 
versions are available on VIC/COMMODORE 
and TRS-BO Color for $2.00 additional. S2.00 
shipping charge on each order. 



Please specify system on all orders 
ALSO FROM AARDVARK - This is only a partial list of what we carry. We have a lot of other games {particularly for the 
TRS-80 Color and OSI), business programs, blank tapes and disks and hardware. Send $1.00 for our complete catalog. 



AARDVARK 
2352 S. Commerce, Walled Lake, Ml 48088 / (313) 669-3110 
Phone Orders Accepted 8:00 a.m. to 4:00 p.m. EST. Mon.-Fri. 
TRS-80 COLOR TIMEX/SINCLAIR COMMODORE 64 

$2.00 shipping on each order 




'% 



VIC-20 



MciY'l9a3 COMPUIB 125 



Microteach Teacher's Aide 
For The Atari 



Mike Kinnamon 

Since I am a teacher, many edu- 
cational programs are brought to 
me by well-meaning computer 
users and salespeople, who be- 
lieve that I can immediately put 
them to use in my classroom. 
Unfortunately, some of these 
programs do not lend themselves 
to practical classroom applica- 
tions. They tend to be either too 
broad or repetitive, too much 
like drills. 

Microteach Teacher's Aide 
(48K, two disk drives) is not in 
that category; it is a welcome 
solution to the problem of tailoring 
computer-assisted education. 

With this program, a teacher 
with no knowledge of computer 
languages can create computer- 
based lessons that deal specific- 
ally with a particular curriculum. 
A teacher may write courses and 
assign them to individuals or 
groups of students, keeping a 
record of each student's progress 
readily available. 

To use Teacher's Aide, you 
first format a blank diskette, 
using your standard Atari Disk 
Operating System. This becomes 
your courseware disk. Next, 
place the Teacher's Aide in drive 
number one and your newly 
created courseware disk into 
drive number two. Reboot the 
entire system without BASIC; 
Optimized System Services' 
BASIC A 4- is used by the pro- 
gram on disk number one. 

The program's features are 
numerous and quite varied. 
Mastering its many modules will 
take several sessions, but the 
end result is well worth the time. 
A teacher can enter the edit mode 
and easily create a unit of study 
categorized into sections and 
chapters which coincide with 
the textbook being used in the 
classroom. You can re-edit an 

126 COtlWUlH Mo^1983 



existing chapter or section for an 
alternate or improved use. You 
can dissect any individual chap- 
ter or section and create ad- 
vanced or remedial editions of a 
given lesson. Each courseware 
diskette can be assigned a vol- 
ume number, thereby creating 
an entire year's curriculum 
in any sequence and of any 
breadth. 

Iiach TV screen is treated as 
a page of a textbook. The teacher 
has the options of color of pages 
and timed or untimed pages. 
The entire page, section, or chap- 
ter can be listed to the printer, 
giving the student a hard copy 
for study notes, homework, or 
tests. 

Flexible Options 

Questions may be presented to 
the student during or after each 
lesson. Several types of ques- 
tions (multiple choice, fill-in-the- 
blank, true-false, or yes-no) can 
be used in any order, in each 
lesson. Each question can be 
timed or untimed, and assigned 
a weighted point value at the 
teacher's discretion. If the stu- 
dent answers a question incor- 
rectly, the teacher may assign a 
page, section, or chapter to be 
reviewed by the student in order 
to better assure a minimum 
competency of the lesson. A 
student's responses thus deter- 
mine the rate at which he or she 
progresses through the lesson. 
The computer will keep a 
complete, detailed record of each 
student's performance. The 
teacher may review a student's 
status at any time and view the 
chapters, sections, and pages 
completed by each student. 
Scores on the questions are avail- 
able with such details as number 
of times attempted before a cor- 



rect answer was entered and the 
weighting value of each ques- 
tion. The teacher may list all 
students on a given disk, assign 
chapters to particular students, 
set up a new student file, or 
delete an old file by entering the 
report/review module of the 
program. 

The editing commands are 
thorough, allowing the teacher 
to create new pages, edit old 
ones, insert or delete a page, 
and step forward or backward a 
page at a time. 

Only graphics mode (the 
standard text mode) can be used 
with this program, which is 
somewhat disappointing, but I 
know a few teachers who have 
spent the time to create high- 
resolution graphics to adorn the 
text. With a little imagination 
and creative endeavor, a teacher 
can use the keyboard graphics 
characters with pleasing results. 
Since each page is static, no ani- 
mation of the graphics is pos- 
sible. This prevents a dynamic 
presentation, which may limit 
the program's usefulness in pri- 
mary classrooms. 

The major advantage of 
Teacher's Aide is that absolutely 
no knowledge of programming 
or computer language is re- 
quired. This is a real blessing for 
those teachers who have wanted 
to use computers in their cur- 
riculum but haven't had time to 
become proficient programmers. 
Test and grade management, a 
major consumer of a teacher's 
time, is greatly simplified with 
this program. The validity of 
any test question can be easily 
determined in a matter of min- 
utes, greatly improving a cur- 
riculum's instructional value 
and a test's abihty to measure 
learning. I would highly recom- 
mend this program. It requires 
an Atari 400/800 and two disk 
drives. 

Microteach Teacher's Aide 
Compumax 
P.O. Box 1139 
Palo Alto, CA 94301 
$195 C 



n VISISCHEDULE H SUPERCALC C VISICALC C. WORDSTAR ZJ D.B. MASTER ZJ MULTI PLAN ZJ VISIFILE Z dBASE II D 



O 

N 

n 

Ul 

O 



D 

Ul 

< 



Q 
< 

UJ 

o 

D 

ae 
111 
m 



z 
< 
u 

D 



lU 

ae 

D 



< 

z 

UJ 

u 
w 

I 

o 
en 

< 

N 

D 

ec 
111 
o 



O 
u 

UJ 

Z 
< 

</) 

D 

HI 

I- 

< 



NEVER 
INVEST IN 
SOFTWARE 

AGAIN! 

unless you can "test" it first, from 
United Computer's SOFTWARE RENTAL LIBRARY 

You can now RENT the most popular software available for just 
15% of Manufacturers' Retail Price 

• Eliminate the risk— rent first! 

• All purchases are 20% Off of Manufacturer's 
Sugsested List 

• 1007o of rental fee applies toward purchase 

• Rentals are for 7-days (plus 3 days grace for return 
shipping) 

There are now 2 different plans to choose from: 



M 



D 



□ 



O 



00 



D 

CA 

n 

m 
m 

Z 



-o 
O 

vt 
O 



D 

-n 

CV 
> 

X 

n 



I 

m 

v> 
m 

Z 

09 

m 
vt 



79 

D 
< 



Z 

o 

•o 

t— 

O 



Join the Game Group for only S50.00 
per year and receive your first computer 
same rental FREE. Then rent as many 
games as you like for only 15% of Mfrs. 

Sugg. Retail Price.* Mmmum order, 3 same rentals 



Join the Business Group for only 
$125.00 per year and receive your first 
rental FREE. Then rent as many business 
application programs as you like for only 
15% of Mfrs. Sugg. Retail Price.* 



REMEMBER, THESE ARE NOT DEMOS, BUT ORIGINAL 
UNRESTRICTED SOFTWARE PROGRAMS 

(complete with manuals in original manufacturers' packages) 

To Immediately Order, or for more Information: 

Money Orders or credit cards BUSINESS HOURS Toll Free CALL 1-8tX) 992-7777 

In California CALL 1-800 992-8888 
In LA. County CALL 1-213 823-4400 



Mon-Frf: 8:30-5:30 

Saturday; 8:30-2:00 
Pacific Time Zone 



Chccksallow 2 weeks 

•plus postage and handling. Some programs may require 2-4 weeks delivery. 



G FROGGER u CHOPLIRER □ GORF L DAVID'S MIDNIGHT MAGIC T EASTERN FRONT (1941) ^ ZORK I D 



A Beginner's Guide 
To Typing In Programs 



What Is A Program? 

A computer cannot perform any task by itself. 
Like a car without gas, a computer has poteiitinl, 
but without a program, it isn't going anywhere. 
Most of the programs published in COMPUTE! are 
written in a computer language called BASIC. 
BASIC is easy to learn and is built into most com- 
puters (on some computers, you have to purchase 
an optional BASIC cartridge). 

BASIC Programs 

Each month, COMPUTE! publishes programs for 
many machines. To start out, type in only pro- 
grams written for your machine, e.g., "TI Version" 
if you have a TI-99/4. Later, when you gain ex- 
perience with your computer's BASIC, you can 
try typing in and converting certain programs 
from one computer to yours. 

Computers can be picky. Unlike the English 
language, which is full of ambiguities, BASIC 
usually has only one "right way" of stating some- 
thing. Every letter, character, or number is signif- 
icant. A common mistake is substituting a letter 
such as "O" for the numeral "0", a lowercase "1" 
for the numeral "1", or an uppercase "B" for the 
numeral "8". Also, you must enter all punctuation 
such as colons and commas just as they appear in 
the magazine. Spacing can be important. To be 
safe, type in the listings exactly as they appear. 

Brackets And Special Characters 

The exception to this typing rule is when you see 
the curved bracket, such as "{DOWN}". Any- 
thing within a set of brackets is a special character 
or characters that cannot easily be listed on a print- 
er. When you come across such a special state- 
ment, refer to the appropriate key for your com- 
puter. For example, if you have an Atari, refer to 
the "Atari" section in "How to Type COMPUTEl's 
Programs." 

About DATA Statements 

Some programs contain a section or sections of 
DATA statements. These lines provide informa- 
tion needed by the program. Some DATA state- 
ments contain actual programs {called machine 
language); others contain graphics codes. These 
lines are especially sensitive to errors. 

If a single number in any one DATA statement 
is mistyped, your machine could "lock up," or 
"crash." The keyboard, break key, and RESET {or 
STOP) keys may all seem "dead," and the screen 

128 COMnntt May19S3 



may go blank. Don't panic - no damage is done. 
To regain control, you have to turn off your com- 
puter, then turn it back on. This will erase what- 
ever program was in memory, so always SAVE a 
copy of your program before you RUN it. If your 
computer crashes, you can LOAD the program 
and look for your mistake. 

Sometimes a mistyped DATA statement will 
cause an error message when the program is RUN. 
The error message may refer to the program tine 
that READs the data. TJie error is still in the DATA 
statements, though. 

Get To Know Your Machine 

You should familiarize yourself with your com- 
puter before attempting to type in a program. 
Learn the statements you use to store and retrieve 
programs from tape or disk. You'll want to save a 
copy of your program, so that you won't have to 
type it in every time you want to use it. Learn to 
use your machine's editing functions. How do 
you change a line if you made a mistake? You can 
always retype the line, but you at least need to 
know how to backspace. Do you know how to 
enter inverse video, lowercase, and control char- 
acters? It's all explained in your computer's 
manuals. 

A Quick Review 

1) Type in the program a line at a time, in order. 
Press RETURN or ENTER at the end of each line. 
Use backspace or the back arrow to correct 
mistakes. 

2) Check the line you've typed against the line in 
the magazine. You can check the entire program 
again if you get an error when you RUN the 
program. 

3) Make sure you've entered statements in brac- 
kets as the appropriate control key (see "How To 
Type COMPUTEl's Programs" elsewhere in the 
magazine.) 



We regret that we are no longer able to respond to 
individual inquiries aboul pronram^, products, or 
services appcarifi;^ in COMPUTE! due to increasing 
publication activity. On those infrequent occasions 
xohen a published program contains a typo, the correc- 
tion will appear on the CAPUTE! page, usualhj within 
eight iveeks. If you have specific questions about items 
or programs which \/ou've seen hi COMPUTE!, please 
send them to Ask The Readers, P.O. Box 5406, 
Greensboro, NC 27403. 



How To Type COMPUTERS Programs 



Many of tho programs which <are listed in COMPUTE! contain 
special control characters (cursor control, color keys, inverse 
video, etc.). To make it easy to tell exactly what to type when 
entering one of these programs into your computer, we have 
established the following listing conventions. There is a 
separate key for each computer. Refer to the appropriate 
tables when you come across an unusual symbol in a program 
listing. If you are unsure how to actually enter a control 
character, consult your computer's manuals. 

Atari 400/800 

Characters in inverse video will appear like: fHicEOEEa«Ef3eae 
Enter these characters with the Atari logo key, (At. 

When you see Type See 



(CLEAR} 


ESC 


SHIFT < 


•f 


Clear Screen 


{UP> 


EBC 


CTRL - 


r 


Cursor Up 


{DCSHN} 


EBC 


CTRL - 


♦ 


Cursor DoMn 


tLtH) 


EBC 


CTRL + 


*. 


Cursor Left 


miBHT> 


ESC 


CTRL « 


■* 


Cursor Ri ght 


(BACK SJ 


ESC 


DELETE 


4 


Backspace 


(DELETE ) 


ESC 


CTRL DELtIt 


a 


Delete character 


(INSERT) 


ESC 


CTRL INSERT 


u 


Insert character 


(DEL LINE} 


ESC 


SHIFT DFI FTE 


□ 


Delete line 


(INS LINE} 


ESC 


SHIFT INSERT 


n 


Insert line 


(TAB} 


ESC 


TAB 


> 


TAB key 


(CLR TAB} 


ESC 


CTRL TAB 


a 


Clear tab 


(SET TAB} 


ESC 


SHIFT TAB 


a 


Set tab stop 


{BELL> 


ESC 


CTRL 2 


a 


Ring buizer 


(ESC} 


ESC 


ESC 


^ 


Escape key 



Graphics characters, such as CTRL-T, the ball character • will 
appear as the "normal" letter enclosed in braces, e.g. (T . 

A series of identical control characters, such as 10 spaces, 
three cursor-lefts, or 20 CTRL-R's, will appear as S 10 
SPACES), (SLEFTi:, (20 Rl, etc. If the character in braces is 
in inverse video, that character or characters should be en- 
tered with the Atari logo key. For example, ! n) means to 
enter a reverse-fietd heart with CTRL-comma, 1 5ni() means to 
enter five inverse-video CTRL-U's. 

Commodore PET/CBMA/IC 

Generally, any PET/CBM/VIC program listings will contain 
bracketed words which spell out any special characters; 
(DOWN ) would mean to press the cursor-down key; 
{3DOVVN) would mean to press the cursor-down key three 
times. 

To indicate that a key should be sliifted (hold down the 
SHIFT key while pressing the other key), the key would be 
underlined in our listing. For e^sample, S would mean to 
type the S key while holding the shift key. This would result 
in the "heart" graphics symbol appearing on vour screen. 
Some graphics characters arc inaccessible from the keyboard 
on CBM Business models (32N, S032). 

Sometimes in a program listing, especially within quoted 
text when a line runs over into the next line, it is difficult to 
tell where the first line ends. How many times should you 
type the SPACE bar? In our convention, when a line breaks 
in this way, the ~ symbol shows exactly where it broke. For 
example: 

100 PRINT "TO START THE GAME ~ 
YOU MAY HIT ANY OF THE KEYS 
ON YOUR KEYBOARD." 

shows that the program's author intended for you to type 
two spaces after the word GAME. 



All Commodore Machines 

ClearScreen {CLEAR} 
HotncCursor { HOME) 
CursorUp fUP) 
Cu rsor Do vvn { DOWN ) 
Cursor Right (RIGHT) 



Cursor Left {LEFT) 

insertCliaractor {iNST) 
Delete Character {DEL) 
Reverse Field On {RVSJ 
Reverse Field Off { OFF} 



Function Two 


IF2} 


Function Three 


{F3) 


Function Four 


{F4} 


Function Five 


{F5} 


Function Six 


{F6} 


Function Seven 


{F7} 


Function Eigtit 


{F8} 


Any Non-implemenled 


Function 


{NIM} 



VtC/CBM 64 Conventions 

Set Color To Black {BLK) 
SctColorTo White {WHT) 
Set Color To Red {RED) 
Set Color To Cyan {CYN) 
Set Color To Purple { PUR) 
Set Color To Green (GRN) 
Set Color To Blue {BLUl 
Set Color To Yellow { YEL) 
Function One {Flf 

To enter any color code, hold down CTRL and press the 
appropriate color key. Use CTRL-9 for RVS on and CTRL-0 
for RVS off. 

8032/Fat 40 Conventions 

SetWindowTop {SET TOP) Erase ToBeginningfERASE BEGi 
Set Window Botlom{ SET BOTj Erase To End {ERASE END) 

ScrollUp {SCR UP) Toggle Tab {TGL TAB) 

ScrollDown {SCR DOWN} Tab {TAB) 

Insert Line {INST LINE} Escape Key {ESC) 

Delete Line {DEL LINE) 

When you see an underlined character in a PET/CBM/VIC 
program listing, you need to hold down SHIFT as you enter 
it. Since the VIC-20 and Commodore 64 have fewer keys 
than the PET/CBM, some graphics arc'grouped with other 
keys and have to be entered by holding down the Commodore 
key. If you see any of the symbols in the left ctilumn imder- 
lined in a listing, hold dtnvn the Commodore key antl enter 
the symbol in the right column, just use SHIFT to enter all 
other underlined characters. 



f 


K 


/i 


I 


# 


T 


$ 


@ 


% 


G 


/ 


M 


& 


# 


\ 


- 


r 


F 


7 


B 


( 


£ 


) 


SHIFr-£ 



1 


E 


2 


R 


3 


W 


4 


H 


5 


J 


6 


L 


7 


Y 


8 


U 


9 


I 


@ 


SHIFT* 


r 


SHIFT + 


] 


SHIFT- 



t PI 

. s 
- z 

= X 

< c 

> V 

, D 

/ F 

* N 

+ Q 

A 

Apple li / Apple II Plus 

All programs are in Applesoft BASIC, unless otherwise 
stated. Control characters are printed as the "normal" char- 
acter enclosed in brackets, such as I D 1 for CTRL-D. Hold 
down CTRL while pressing the control key. You will not see 
the special character on the screen. 

TRS-80 Color Computer 

No special characters are used, other than lowercase. When 
you see letters printed in inverse video (white on black), 
press SHIFT-0 to enter the characters, and then press SHlFT-0 
again to return to normal uppercase typing. 

Texas Instruments 99/4 

No special control characters are used. Enteral! programs 
with the ALPHA lock ofi (in the down position). Release the 
ALPHA lock to enter lowercase text. 

TImex TS-1000, Sinclair ZX-81 

Study your computer manual carelullv to see how to enter 
programs. Do not type in (he letters for each command, 
since your machine features single-keystroke entry i>f BASIC 
commands. You may want to switch to the FAS! mode 
(where the screen blanks) while entering programs, since 
there will be less delay between lines. (If the blanking screen 
bothers vou, switch to the SLOW mode.) 

MCIV1P63 COMPUni 129 



KMMM Pncal for PET/C8M/C64 



$85 



A subset of standard Pascal with extensions. 

- Mactime language Pascal Source Editor witti cursor 
ofienled window mode- 

- Macliine Language P-Code Compiler 

- P-Code to mactiine lariguage transfer lor optimized otject 
code. 

- Hun-time package 

- Floating point capability 

- User manual and sample programs 

Requires 32 K Ptease specify conliguration 

EAlirforPiET (disk file based) $65 

Editor Asumtler, RtloaUr. Linker 
Gene;ales relocatable object code using MOS Tecfrnology 
mnemonics. Disk file input (can edit files larger than memory) 
Links nxjiliple obiect pfograms as one memory load. Listing 
output to screen or pnnlef Enfianced editor operates in bctli 
command mode and cursor oriented "window" mode. 

RAM/ROM for PET/CBM 

4K or 8K bytes of soft ROM with optional 
battery backup. 

RAM-ROM IS compatible with any large keyboard machine 
Plugs into one of the ROM sockets above screen memofy to 
give you switch selected write pfotectable RAM 
tJse RAM/ROM as a software development tool to store data 
or machine code beyond the norma! BASIC range. Use RAM/ 
ROfd TO LOAD A ROM image where you have possible con- 
flicts with more than one ROM requiring the same socket 
Possible apfllications include machine language son (such as 
SUPERSORT). universal wedge. Extramon, etc 

RAM/ROM -4K $75 

RAH/ROM - 8K 90 

Battery Backup Option 20 

SUBSORT for PET/CBM $35 

Excellent general purpose machine language sort routine. 

THE WHOLE PET CATALOG $9 

A two yeai 320 page compendium o( the Midnite Software 
Gazette (or CommoOore computer users. Contains 500 reviews 
of commercial products, 700 education programs (reviewed 
and organized by coursel. 200 reviews of free games, inio on 
over f 800 Iree programs, list of PET and VIC user groups, and 
many pages of helps and hints 

SuperGraphics 2.0 

NEW Version with TURTLE GRAPHICS 

SuperGraphics, by Jotin Fluharty. provides a 4K machine 
language extension which adds 35 full featured commands to 
Commodore BASIC to allow fast and easy plotting and man- 
ipulation o( graphics on the PET/C BM video display, as well as 
SOUND Commands Animations which previously were loo 
slow or impossible withcut machine language subroutines 
now can be programmed directly in BASIC. Move blocks (or 
rocketships. etc.) or entire areas of the screen with a single, 
easy to use BASIC command Scroll any portion of the screen 
up, down, left cr right. Turn on or off any of the 4000 {8000 on 
8032) screen pixels with a single BASIC command. In high 
resolution mode, draw vertical, horizontal, and diagonal lines. 
Draw a box. fill a box, and move it around on tlie screen with 
easy to use BASIC commands. Plot curves using either rec- 
tangular or polar co-ordinates (great for Algebra, Geometry 
and Trig classes,) 

The SOU N D commands allow you to initiate a note or series 
of notes (or even several songs) Itom BASIC, and then play 
them in the background mode without interfering with your 
BASIC program Ttiis allows your program lo run at full speed 
with simultaneous graphics and music 

Seven new TURTLE commands open up a wbole new 
dimension in graphics. Place the TURTLE anywhere on the 
screen, set his DIRECTION, turn him LEFT or RIGHT move 
him FORWARD, raise or lower his plotting pen. even flip the 
pen over lo erase. Turtle commands use angles measured in 
degrees, not radians, so even elementary school children can 
aeate fantastic graphic displays 

Specify machine model (and size), ROM type (BASIC 3 
or 4) 

SuperGraphics (disk or tape) S40 

SuperGraphicsinROM($A000ofS9000) S55 
Volume discounts available or ROM version lot schools 




NEW 
VERSION 2 



lir PET/CBM Cnpitin 

FLEX-FILE IS a set ol flexible.frienrUy programs lo allow you to 
set up and maintain a data base. Includes versatile Report 
Writer and Mail Label routines, and dxumenlation lor pro- 
grammers to use Data Base routines as part ol other pro- 
grams 

RANDOM ACCESS DATA BASE 
Record size limit is 256 characters The number of records per 
disk is limited only by record size and free space on the disk. 
File maintenance lets you step forward or backward through a 
file, add.delete. or change a record, go lo a numbered record, or 
(ind a record by specified field (or partial field) Field lengths 
may vary to allow maximum information packing Both sub- 
totals and sorting may be nested up to 5 fields deep. Any field 
may be specified as a key. Sequential file input and output, as 
well as fileoutput in WordProand PaperMate tcrmal is suppor- 
ted Record size, fields per record, and order of fields may be 
changed easily 
MAILING LABELS 

Typical mail records may be packed 3000 per disk on 8050 
(f 400 in 4040), Labels may be printed any number wide, and 
may begin in any column position There is no I im if on the num- 
ber or order ol fields on a label, and complete record selection 
via type code or field condition is supported, 
REPORT WRITER 

Flexible printing format, including held placement, decimal 
justification and rounding, Deline any column as a series of 
math or trig functions performed on other columns, and pass 
results such as mnnmg total from row to row. Totals, nested 
subtotals, and averages supported. Complete record selection, 
including field within range, pattern match, and logical func- 
tions can be specified, 

FLEX-FILE 2 by Michael Riley $110 

Please specify equipment conliguration when ordering. 

DISK LC.U. $40 

Intensive Care Unit by LC. Cargile 

CDMi'inE DISK RECOVERY SYSTEM FOR CBM DRIVES 

- edit disk blocks wiih ease 

- duplicate disks, skipping over bad blocks 

- complete diagnostic facilities 

- unscratch scratched liles 

- check and correct scrambled files 

- recover improperly closed files 

- extensive treatment of relative files 

- optional output to IEEE488 printer 

- comprehensive user manual (an excellent tutorial on disk 
operation and theory). 

Furnished on copy-protected disk with manual. 
Backup disk available, SI additionaf 

PROGRAM YOUR OWN EPROMS $75 

Branding Iron EPROM Programmer for PET/CBM software ta 
all ROM versions. Includes all hardware and software to pro- 
gram or copy 27f 6 and 2532 EPROMs 

PORTMAKER DUAL RSZ32 SERIAL PORT $63 

Two ports with full bipolar RS232 bulfering. Baud rates from 
300 to 4800, For PET/CBM, AIM, SYM, 

Commodore 64 

Huiler-Klllir - Coinmodorc 64 15 
■ authentic naval warfare game (complete with sonar) 

Submarine Warfare (Clockwork Computers) 29 

WordPro 3-F/64 75 

Vanilla PILOT with Turtle Graphics 27 

- also includes sound. Toolkit, joystick support 
Commodore 64 Programmer Reference (Suide 15 
C64 lo Parallel Printer Inlerface 79 
CC I Subniarine Warfare 24 
Laser Command 15 
VICTORY SDttwirt Itr Ciramdon 64 In itoctt 

FORTH for C64 50 

Adventure Pack I (Victory Software) 12 

Adventure Pack II (Victory Software) 12 

Grave Robbers (Victory Software) 12 




FORTH for PET 

BY LC. Cargile and Michael Riley $50 

Features include 

full FIG FORTH model. 

all FORTH 79 STANDARD extensions. 

stnjctured 6502 Assembler wilh nested decision 
making macros 

full screen editing (same as when programming in 
BASIC), 

auto repeal key, 

sample programs. 

standard size screens (1 6 lines by 64 characters) 

150 screens per diskette on 4040. 480 screens on 
8050, 

ability to read and write BASIC sequential files. 

introductory manual. 

reference manual. 
Runs on any f6K or 32K PET/CBM [including 8032) with 
ROM 3 or 4, and CBM disk drive. Please speafy conliguration 
when ordering. 

Meticoniplir for FORTH SSO 

Simple metacompiler for creating compacted obiect code 
which can be executed independently (without the FORTH 
system). 



PageMate 
60 COMMAND 

WORD 
PROCESSOR 

by Michael Riley 



Paper-Mate is a full-featured word processor for Com- 
modore computers. Page-Mate incorporates 60 commands to 
give you full screen editing with graphics for all 16K or 32K 
mach Ines (including 8032). all printers, and disk or tape drives. 
Many additional features are available (including irast capa- 
bilities ol WordPro 3) 

For writing texL Page-Mate has a definable keyboard for 
operator flexibility. Shift lock on letters only, or use keyboard 
shift lock. All keys repeat, 

Page-Mate text editing includes floating cursor, scroll up or 
down, page lorward or back, and repeating insert and delete 
keys. Text block handling includes transfer, delete, append, 
save, load, and insert 

All formatting commands are imbedded m text lor complete 
control. Commands include margin control and release, column 
adjust. 9 tab settings, variable line spacing, justify text, center 
text, and auto print form letter (variable blxk). Files can 5e lin- 
ked so that one command prints an entire manuscript Auto 
page, page headers, page numbers, pause at end of page, and 
hyphenation pauses are included 

Unlike most word processors. CBM graphics as well as text 
can be used. Page-Male can send any ASCII code over any 
secondary address to any printer 

Page-Mate functions with all Commodore machines with at 
leas! f 6K. with any printer, and either cassette or disk. 

Toorder Page-Mate, pieasespecify machine and ROM type 
Page- M ate (disk or tape) for PET, C BM. VIC, C64 $40 

SM-KIT tor PET/CBM $40 

Enhanced RO M based util Ities for BAS IC 4 I ndudes both pro- 
gramming aids and disk handling cnmmands 

CBM Sonwart 

BASIC INTERPRETER lor CBM 8096 tZDO 
PEDISK II Syilems Iniin i;gn Mlcratcch anilible. 
FILEX IBM 3741/2 Dati Eichinge Software ivailablt. 
JIHSAM Data Base Management Syitem ler CBM. 

COPY-WHITER WdhI Proceisorlar PET/CBM SI 59 

CASH MANAGEMENT SYSTEM $45 

Petspeed BASIC Compiler 225 

Integer BASIC Compiler ffO 

CMAH Record Handler 110 

UCSD Pascal (without board) 135 

Wordcraft 80 or 8095 265 

BPI Accounting Modules 280 

Professional Tax Prep System 575 

ASERT Data Base 375 

Oow Jones Portfolio Management 1 1 

Assembler Development 80 



252 Bethlehem Pike 
Colmar, PA 18915 



21 5-822-7727 



A B Computers 



WRITE FOR CATALOG 



\/S^ Alspa Computer Jnc. 



The pfice-pertofniance leader Includes Z80A, 1 or 2 lull 8" 
drives (douWe density, double sided]. 3 serial and 1 parallel 
port, and Winchester port. Prices start at less than S2000. 
DEALER and OEM inqiitfies invited- 

SPECIALS on INTREGATED CIRCUfTS 

6502 7,45 10/695 50/B55 100/615 

6502A/6512A B40 10/7 95 50/7 35 100/6.90 

6520 PIA 5.15 10/4.90 50/4.45 100/4.15 

6522 VIA 6.45 10/6.10 50/5.75 100/5.45 

6532 7,90 10/7.40 50/700 100/6,60 

2114-L200 2,45 25/2.30 100/215 

2716EPROM 4,90 5/4,50 10/4,00 

2532EPROM 7,90 5/7.45 10/690 

6116 2KX6CM0SRAM 7 90 5/7 45 10/6,90 

4116 RAM 8 for 14 

?.?'.9.l!??.?[!ioD.f.9r?*i.''.M S?PM1553nbei 2_00 

Hewlett Packard j^^l 

Write or call fqi^grices^ ^» 1-^ 




Anchor Automation Signalman Modems 

FREE SOURCE MEMBERSHIP WITH SIGNALMAN 

All Signalnnan Modems are Direct Connect, and include cables 

to codfiect to your computet and to tfie teleptione. Signalman 

Modems provide ttie best price-performance values, and start 

at less titan SI 00 Dnicr ]od OEM inquirits iiiiitetl 

Mark I RS232 

Mark II lor Atan 850 

Mark IV lor CBM/PETwittt software 

Mark V tot Osliorne (software available) 

Mark VI for IBM Personal Computer 

Mark VII Auto Dial/Auto Answer 

Mark VIII Bell 212 Auto Dial/Answer 



DC HAYES Smarlnmileni 

DC Hayes Smartnxxiem 1200 



ZZ9 

545 



We carry Apple 11+ from 
Bell & Howell 




16K RAM Card ^-s^*^ lor Apple 

Soliil Oak 2 Level Stand for Apple 

Apple LOGO 

Video Reco/der Interface 

Super Serial Card 

Tfiunderclock Plus 

Z80 Softcard and CP/M (Microsoft) 

Parallel Printef Interface/Cable 

Grappler Interface 

TG Fnitiicti Joyitlck fur Apple 

TG Paddles 

DC Hayes Micromodem II 

VidSK 80 Column Card 

HivdcD Sattnre fgr Apple 20% OFF 

Apple PASCAL Language 

Apple FORTRAN 

We slock EDUWARE Software 

GENIS I Courseware Development System 

Unicom Grade Reporting or Scliool Inventory 

Executive Briefing System wilfi fonts 

Apple DumplltigjMlcratekJPrinterlnterface 
Apple Dumpling with 16K Buffer 
PIE Writer Word Processor 



65 

29 

150 

545 

149 

119 

235 

80 

139 

48 

32 

299 

239 

195 
160 

90 
250 
225 

115 

160 
120 



Qcommodore 

See us for Personal, Business, 
and Educational requirements. 
Educational Discounts available. 

PETSCAN $245 base price 

Allows you to connect up to 35 CBM/PET Computers to 
sfiared disk drives and printers Completely transparent to ttie 
user. Perfect for schools or multiple word processing con- 
figurations. Base configuration supports 2 computers Addi- 
tional computer fiookups S 1 D eacfi. 

Comtnodore COMMUNICATES! 

COMPACK $115 

Intelligent Terminal Package indudes 

ACIA fiardware based interface: DB25 Cable and STCP Soft- 
ware with remote telemetry, transfer to/from disk, printer out- 
put. XON-XOFF contiol. user program control, and status 
line 

VE-2[EEEtoParalielliitertac8 tlO 

Includes case, power supply, full B-bit transmission, and 
swilcti selectable character conversion to ASCII. 



VIC 20 Frgiliicti 
Backup VI 20 

VIC RAM Cards in stock 
VIC SuperExpander 53 
VIC 16KRAM 
Thtm EMI Soltwirt 
HES Soltwirt 
VIC Omega Race 
SpKto ol Mara (UMl) 
Programmers Aid 



95 



VICTOflV So(ti#an! 



Street Sweepers 
Night Rider 
Treasures of Bat Cave 
Games Pack I 
Victory Casino 
Adventure Pack II 



12 
11 
12 
12 
B 
12 



VIC Sargon II Chess 
VIC GORF 
Meteor Run (UMI| 
VIC Radar Ratrace 
Amok (UMl) 
Snakman 
Rubik's Cube 
Programmers Reference 
Renaissance (UMl) 
VIC Adventure Series 
lor VIC and CE4 
Ma?ein 3-D 
Cosmic Debris 
Grave Robters AdvenL 
Games Pack I] 
Adventure Pack I 
Trek 



Commodore 64 Programmers Reference Guide 1 7 

Compotef's First Book ol PET/CBM 11 

POWER ROM Utilities for PET/CBM 78 

WordPro 3-F - 32K C8M, disk, printer 195 

WBrtPro 3+/B4 70 

WordPro 4-1- - 8032, disk, printer 300 

SPELLMASTER spBllhg checker lor WordPro 1 70 

VISICALC for PET. ATARI, or Apple 1 90 

PETRAX PET to Epson GnpMcs Softaare 40 

SM-KIT enhinceil PET/CBM ROM Utilities 40 

Programmers Toolkit ■ PET ROM Utilities 35 

PET Spacemaker II ROM Switch 36 

2 Meter PET to IEEE or IEEE to IEEE Cable 40 

Dust Cover for PET, CBM, 4040, or 8050 8 

VIC or C64 Parallel Printer Interface 79 

CmC IEEE-RS232 Punter Interface - PET f20 

SADI Intelligent IEEE-RS232 or parallel 235 

ZRAM - CBM 64K RAM, ZBO, CP/M 550 

Prograntming the PET/GBM |Ciinipute!| — R. West 2D 

Compute! First Book of VIC ft 

Whole PET Catalog |M)dnight Gazettt) 8 

Color Ctiart Video Board for PET 1 25 

PET Fun and Games (Cursor) 1 1 



REVERSAL (Spracklen) Apple or Atari 

SARGONII — AppleofTRS-eO 

Apple II Users Guide (Osborne) 

Introduction to Pascal (Sybex) 

Pascal Handbook (Sybex) 

Musical ApplicatiorB of Micros (Chamberlin) 

Starting FORTH 

Discover FORTH 

User Guide to the Unix System 

6502 Assembly Language Subroutines 

PET Fun and Games 

KAMIKAZE (Hayden SotlwareApple) 



25 
26 
12 
13 
16 
20 
14 
12 
13 
11 
9 
28 



DISK 
SPECIALS 




Scotcti (3M) 5" ss/dd 
Scotch (3M) 5" ds/dd 
Scotch (3M) 8" SS/sd 
Scotch (3M) 8" ss/dd 



10/2 25 50/2-10 100/2,05 

10/3.15 50/2,90 100/2,85 

10/240 50/2-20 too/ 215 

10/2 95 50/2 70 100/ 2,65 



We Stock VERBATIM DISKS 

Write tor Dealer and DEM prices. 

BASF 5" or 8" 10/ 2 00 20/1,95 100/1.85 

NEW BASF Qualimetnc Disks also in stock. 

Wabash 5"ss/sd 10/1,80 50/1,75 100/1.70 

Wabash 5" ss/dd 10/200 50/195 100/1-90 

Wabash 8" ss/sd 10/2,00 50/1,95 100/1-90 

We stock MAXELL DISKS 

Write for dealer and OEM prices. 

Disk Storage Pages lOforSS Hub Rings 50 for S6 
Disk Library Cases 8"— 3.00 5"— 2.25 
Head Cleaning Kits 1 f 



CASSEHES- 


-AGFAPE-611 PflEMIUM 




High output, low 


noise, 5 screw housings 




C-IQ 


10/ ,61 


50/ 58 


100/ .50 


C-30 


10/85 


50/ ,82 


100/ .70 



SPECIALS 



109 



Zenith ZVM-1 21 Green Phospftor Monitor 

VOICE BOX Speech Synthesizer (Apple or Alan) 

Many printers available (Star, Brother. OKI. etc) 

We Stock AMDEK Moniton 

Watanabc Intelligent Plotter 990 6-pen 1290 

ISDBAH 4 Oullet Sargi Suprtstor/Noite Filtir 49 

We stock Electrohome Monitors 

dBASE II 390 

Panasonic TR-120M1P 12" Monitor (20 MHz) 149 

Panason Ic CT- 1 60 Dual Mode Color Monitor 285 

Franklin Computers - special system price 
Hewlett Packard Calculators available 

US! Vitle« Monitors— Green or AMBER ZD MHz hl-rts. 
Dealer aitd OEM Inquiries inirlteil 

ALL BDOK and SOFTWARE PRICES DISCOUNTED 



A P Products 



1 5% OFF 



Spertek SYM-] Microcomputer SALE 189 

KTM -2/8 Synenek Video and Keyboard 349 



TMM/TH 



data 
systems 



Z29 Terminal [VTIGO. VT-52, ADM3A. 

|{azl500 CDinpatibiel 660 

ZT-l Intelligent Cammunications Terminal 479 

ZIQOlS-bit/B-bit System CALL 

We stock entire Zenith line. 




ATARr 

SPECIALS 



800 Computer 
400— 16K 
810 Disk Drive 
Tlioni EMI Sottwire 

850 Interface 
Inside Atari DOS 
Joysticks or PatJdIes 
Microtek RAM Cards 
EiJuFiii Softwire 
Pi kit 

Super Breakout 
APX Software 



499 
199 
440 

170 
18 
19 



Mtaosott BASIC 
MISSILE COMMAND 
ASTEROIDS 
STAR RAIDERS 

Space Invaders 
Atari Grapk (Conipute'l 
Caverns of Mars 
PAC-MAN 
CENTIPEDE 
First Book ol Atari 
Andwr Modim— Atiii 
Other Atan products 



72 
29 
29 
34 

29 
11 

33 

36 
3E 
11 
B5 



252 Bethlehem Pike 
Colmar, PA 18915 



215 822 7727 A B Computers 



WRITE FOR CATALOG 

Add $1 ,25 per order for shipping. We pay balance of l/PS surface 
charges on all prefMtd ordefS, Prices listed are on cash discount 
basis. Regular pnces slightly higher. Prices subject to change. 



THE WORLD INSIDE THE COMPUTER 



Software For Toddlers 



Fred D'lgnozio, Associate Editor 




I first started working 
with children and 
computers back in the 
early 1970s. I was a 
programmer for a 
large computer time- 
sharing company, 
and I took a briefcase 
computer terminal 
with me to elementary 
school classrooms around the District of Colum- 
bia. We dialed up the main computer on the tele- 
phone and plugged it into the terminal. 

I wrote all the programs that I demonstrated 
to the kids. That's because there wasn't anything 
else out there. 

Sure, there was CAI (Computer-Assisted 
Instruction) courseuHire available. But that was 
mostly for older kids, and it was very expensive. I 
operated my litde computer-literacy project on a 
shoestring. CAI materials were over my students' 
heads and beyond the reach of my wallet. 

Then came the flood of personal computers. 
But still no inexpensive software for children in 
preschool through early elementary school. Par- 
ents and teachers who wanted software had to 
write it themselves. Or they could find an occa- 
sional listing in a computer magazine. 



I'rcii D'l^iiiizio ifi a couipiihTciithusinst and author of 
:^fivml book^ oil coinpiitciy to>' }(ouit;^ people. His books 
indudc Katie and the Computer (Creative Coniputiii'^), 
Chip Mitchell: The Case of the Stolen Computer Brains 
(Diittoiii Lodestar), and R2-D2's Question and Answer 
Book About Computers (Random House). 

As the talker of livo i/omti^ cluldreii, !-red has heeoiiie 
concerned with introducing the coiiipuler to children as a 
wonderful tool rather than as a forbidding electrotiic device. 
His colttniii appears monthly in COMPUTE!. 

132 COMPUTE! MavlCaa 



Now, suddenly all this is changing. People 
have finally realized that even the smallest kids 
can use computers to have fun and to learn. 

And computers are appearing in people's 
homes by the millions. By the niUUous. 

Thousands upon thousands of the families 
who now have computers also have little kids. 
These kids represent an enormous market for 
software. Software companies and traditional 
publishing companies are leaping into this market 
by the dozens. All of a sudden we are being 
deluged by programs for little kids. 

Software Reviews 

In future columns, I will continue to write about 
the computer friend and about "programming 
languages" for little kids (see my column last 
month.) But I will also devote part of each column 
to reviewing the best of the new software for little 
kids. 

If you don't find a major piece of software 
reviewed in my column, look for it in other COM- 
PUTE! columns (such as in Glenn Kleiman's or 
David Thornburg's column or in the Reviews 
section of each issue.) Or write me directly (Fred 
D'lgnazio, 2117 Carter Road, SW, Roanoke, VA 
24015). I'll get the software and respond to vou 
personally. If it merits review, I'll also include it 
in a forthcoming column. 

E.T. On Your Computer 

Everybody is going computer. Everything that 
now appears in a book, in the comics, in the 
movies, or on TV will soon be loaded into a com- 
puter. Within the next few years, we will see all 
our kids' heroes and superherocs, myths, fairy 
tales, and favorite characters appear electronically 
on personal computers. Big Bird, Strawberry 
Shortcake, and Papa Smurf will all be com- 
puterized. So will Batman, Wonder Woman, and 




NEW MULTI-USER SOFTWARE LETS THE WHOLE FAMILY 
SHARE IN THE JOY OF LEARNING. 



Is the personal computer doing all It can to help 
our children learn? 

To some degree, no, although it's not fair to blame 
it entirely on the computer. After all, computers are 
only as good as their software. 

How can we improve this situation? 

A solution already exists. But first, some back- 
ground. 

Where personal campulers fail. 

For years, studies have shown that children learn 
more ehiciently in group situations. Peer groups, tor 
example, motivate slower learners to persevere. 
Groups of older and younger children encourage 
divergent thinking. Even the simple "group" of a 
parent and child promotes faster acceptance of 
new ideas by combining education with trust 
and confidence, 

Bu! personal computers and their programs are 
designed to be personal. One computer, one child. 
It's hard for anyone else to be pari of the learning 
experience, even you. 

At least not until today 

A simple solutien. 

When two educational researchers. Dr. Matilda But- 
ler and Or William Paisley, observed I his problem 
they proposed an interesting, yet simple, solution. 
Instead of writing programs that shut out brothers, 
sisters, tnends, and parents, why not give everyone 
(he opportunity to share learning simultaneously. This 
one idea sparked an entire line of unique educational 
programs and gave birth to a new company, Edupro. 

Software that shares. 

With Edupro's Microgroup'" computer programs, 
up to eight players work at solving math, language, 
social studies, or science problems which are pre- 
sented as contests, races, and puzzles. The players 
work together, either competitively or cooperatively, 
as they race against time, each other, or both. 

The Math-Race program, for example, converts 
your computer into an electronic race track where 
children compete to answer math problems and 
advance toward the finish line. Picture-Play encour- 
ages everyone to create pictures together, teaching 
both spatial relationships and the value of coopera- 
tion. And Team-Work combines both cooperation and 

Atari ■ and 4e0 / 800" are Iradematte of ATARI Inc. 



competition by pitting two teams (of up to four play- 
ers) against each other in a race to solve word and 
number puzzles. 

For the first time, your personal computer can 
bring all the benefits of group learning info your 
home. With a little assist from Edupro. 

Designed for the simplest computers. 

These unique programs run on the Atari 400 or 
800, two of the worid's most popular home com- 
puters. Remember, these aren't game cartridges, 
they're full computer programs, designed by educa- 
tors. All are available on floppy disk or cassette, and 
each one requires the minimum amount of computer 
memory (16K for cassette, 24K for disk), That means 
the simplest Atari computer can let your children 
share the learning experience with up to seven addi- 
tional friends. Joysticks required for Word-Draw, 
Math -Hunt, and Picture-Play; paddles required for 
Word-Race, Math-Race, and Team-Work. 

Trust your awn experience. 

At the fall 1982 Computer-Using Educators Confer- 
ence hundreds of educators witnessed hands-on 
demonstrations of our programs. H^lany of them said 
that this was a most effective way to judge their 
potential. But we want to offer you an even better 
npportimify One those educators missed. 



n 



Ecfupro 




Edupro ^ 






We want you and your children to experience this 
new way to learn. So ctioose one or more programs 
on either disk or cassette. Try them yourself. Watch 
your children get more excited about learning. Enjoy 
the thrill of sharing the experience with them. We 
know of no other software ttiat can tum a personal 
computer into a tool for sharing the joy of learning. 

Fill out tfie order form and see the results for 
yourself. 



tnn\ to share Ihe joy ol learning v^ith my children Please send 
me the programs I've indicaled below, I understand thai ea[;li 
program is availaljle on either disk or cassette Imy choice) and 
comes wilh a complete se! ol instructions ans catalog feting over 
50 programs. Plus a coupon good lor a 10% dscount on my next 
order 



Quantity F^ogram De$criptian 



for 
Disk 



fol 
Cassatta 



STORYBOOK FRIENDS: Ages 5-9 

WORD-DRAVJ. 

Storytook People and Places 
MATH.HUNT sjumber Relationships 

AWEHICAN THEMES: Ages B-13 
TEAM-WORK: Smal Studies 

MATH-HUNT: Amencan Years: 

Multiplication and Division 

THE WORLD AROUND US: Ages 12-AdulI 
WORD-DRAW: Science 

MATH-RACE: Powers and Roots 



JUST FOR FUN: All Ages 

PICTURE-PLAY 

Total t 



Total Amount S 



programs on disk @ S24.95 each 

programs on cassette @ S19.95 each 

Picture-Play, disk ([r S19-95 _ 

Picture-Play casselte (.;■ SI4.95 _ 

CA residents add sales taj 

Postage and tiandlmg 

Total _ 

My check or money order is enclosed for $_ 

Please bill MasterCard Visa 

(card m.) 

Name 

Address , 

City 



S2.S0 



fexp date) 



_ Slate . 



Signaluie 

Allow 3 weeks (or delivery 



-ZiP- 



Satislactlon guaranieed- 

Send to: Edupro. Depr COl, PO. Box 51346, Palo Alto, CA 94303. 
Wnle to above address (o- Brochure/ catalog listing 
or phooe inquines: (416) '!94-2790 



Edupro 

Edupro. RO BoK 51346 ■ Pak) Alio, CA 9430: 




94303. (4151 494-2790 




< If reading a 

^ memory locations isn't 
enough, the Memory 
Map Tutorial lets you 
watch them work. It is the 
perfect companion to the 
Master Memory Map. We dis- 
cuss In detail over 30 of the most 
important memory locations and 
their functions...l6K tape or disk 
required. $29.95 for ATARI com 

/ M^- VV 



THE MOSTVALUABLE REFERENCE BOOK YOU CAN BUY 



ALL NEW - GREATLY EXPANDED! 

TTi e Master Memory Map™ is a guide for begin ners and 
experts to the hidden treasures of your computer. We 
will show you hundreds of memory locations that you 
can change using PEEK and POKE statements. By 
altering the contents of these locations you can really get 
creative with your computer. Fascinating things you 
never dreamed you could do are now possible. We 

explain the locations controlling Player Missile 
Graphics, Sound Effects, the GTIA chip. Display 
Lists and more. There are also hints on speeding 
up BASIC programs and using memory more 
efficiently, just to name a few. The ATARI 
version of the MMM will also include pages of 
information on the I200XL Put sonne magic 
into your programs with our Master Memory 
Map... 

For ATARI - 512.95 

For Commodore 64 - 514.95 

For V(C-20 - 59.95 



^?s 



"The book just oozes good information 
and is truly one of the great values for 
the Atari." 

Gordon Banks, Huntsville Users Group 
puters. 

X 




EDUCATIONAL 
SOFTWARE, inc 



i 





Have you everwondered what ki nd of pets they used to 
ketp way back when? This game takes you t»d< to 
Morocco In the 9th century to try and win a pet snake 
from Sheba, a very wily snake charmer. All you have to 
do 13 guide your new friend through 7 levels o( feeding. 
This game is written in BAS IC and machine language so 
it can be listed - and you can see how an arcade game is 
developed! Requires I6K tape or 32K disk. S2-4.95 



Q 



o 



AVAILABLE FROM M05T DEALERS 

WRPTE FOR A FREE CATALOG 

■456S Cherryvaie Ave., Soquel CA 9S073 

CALL FOR ORDERING INFORMATION 

MC/VISA/COD: (800) 691-9520 OR (408) 476-4901 




AVAILABLE FROM MOST DEALERS 

WRfTE FOR A FREE CATALOG 

4S6S Cherryvale Avt^ Soquel, CA 9S073 

CALL FOR ORDERING INFORMATION 

MC/VISA/COD: (800) 692-9520 OR (408) 476-4901 



PROGRAM 
EXCHANGE 

EDUCATIONAL SOFTWARE inL 



NEW from EDUCATIONAL SOFTWARE: 

Proto's Favorite Games - Proto just loves kJds and in his new 
adventures they can help him try his skills at bowling, 15 (a number 
puzzle), connea-the-dots and squai-B-4. For I6K upe or 32K disic 
$29.95 

Proto's Fun Day - Proto will have an entertaining day with kids 
(ages 4 to 10) helping him match shap^ assemble new robots in 
Professor Von Chip's lab, and grow a blooming garden in two 
different vrtys. I6K Tape or 32K Disk $29.95 



Mov1<?83 COMPUTf! 135 



Cat in the I i.U. So will l'L2-D2 and E.T. 

Some of this new software will bo junk: dnll, 
of little educational value, using the big names 
(like E.T. or the Smurfs) only for the purpose of 
hooking the kids. 

But there will also be a !t)t of good software. 
Its range and diversity will be breathtaking. And 
it will be fun niui educational. Some of the new 
packages include PLATO software from Control 
Data Corporation; "Sesame Street" software from 
the Children's Coiiiptitcr Workshop (CCW is a 
spin-off from CTVV, the Children's Tele\'isiiMi 
Workshop); "Dr. Seuss" software and games from 
Theodore Geiss and Coleco; electronic books from 
TI that read themselves (using TI's Magic Wand ''' 
bar code reader); plus software from dozens o\ 
other major companies and institutions, including 
the Children's Capitol Museum in Washington, 
D.C., and Milton Bradley. 

I'll review all of these major software prtiducts 
in this column and give prices and the names and 
addresses where the products can be obtained. 

An Unparalleled Oppoitunity 

The flood of programs for little kids is the cutting 
edge of the computer revolution. Programs for 
older kicis and for adults will also have a powerful 
impact. But the impact on little kids will be the 
greatest. 

Why? First, because thev are little kids. Com- 
puters will be among the first things they see. 
Computer-assisted learning will be part of their 
earliest learning experience. It will affect what 
thev learn and hoxo Ihev learn. It will shape kids' 
feelings about learning in general. 

Second, up until now, most learning bv 
little kids has been informal. Very few children 
today receive sustained, cumulative instruction 
before the age of five, when they are enrolled in 
kindergarten. 

Soon all this is going to change. Four-year- 
olds, three-year-olds, two-year-olds, and kids 
even younger will sit down in front of their family 
computers and run exciting, fun programs that 
teach them things thev otherwise wouldn't learn 
until they were twice as old. Or even older. 

Third, much of this learning will be nonin- 
stitutional and extracurricular. Educational TV 
programs like Scsainc Street made a stab at turning 
the home into a "learning center." Now computers 
and the new "todciler" software will make this 
possible. Formal learning at home will skyrocket. 
And it will be largely self-sustained and unsuper- 
vised. Parents will encourage their kids to run the 
programs. Bui the kids will either do it or not. 
The amount of learning that takes place will de- 
pend mostlv on the kids themselves and on the 
quality of tlie software thev are exposed to. 

When this class of computer-literate kids 



enters the public school system, watch out. Each 
kid will test out at a different grade level on liiffcn'nf 
subjects. The strain on public schools will be enor- 
mous. Parents will pressure schools to continue 
the individualized instruction that the children 
began at home on their computers. The schools 
will have to respond. Whether they want to or 
not, the public schools, from kindergarten up, 
will be forced to computerize their curriculums 
extensively. Otherwise, the teachers will be over- 
whelmed by too many kids operating at too many 
levels. 



Millions of our youngest 

children will soon be 

exposed to computer software 

embodying all sorts of values. 



What will be the outcome of all these changes 
in ternis of children's \'alues and the overall quality 
of their development? Millions of our voungest 
children will soon be exposed to computer soft- 
ware emboclving all sorts of values. These wiiues 
will affect the children's emotional disposition, 
their learning ability, and their social and spiritual 
development. 

Little kids are especially vulnerable to new 
values. Their character still has not fully formed. 
And vet what supervision are these kids likelv to 
get when the\' sit down at their computer and run 
these programs? What control will parents, and 
even teachers, have on the shape and scope of 
their kids' development? 

I will deal with these important questions 
and others like tiiem in future columns. Also, I'd 
like to hear from you readers. What are i/oiir 
views? 

The Learning Center 

What is the best way to teach little kids? Is it drill? 
Simulation? Invention? Discoverv? Games? Or 
some combination? 

The programs now appearing for children 
are based on one or more of the above learning 
philosophies. When you are selecting software 
for your kids, it's good to know which philosophy 
(or methodology) the software uses. 

For each of the various philosophies, there 
are several good software packages. Drill is 
perhaps the oldest form of computer instruction. 
In recent years, drill programs have been maligned 
because they are said to be unimaginative, they 
don't take full advantage of the computer, and 
"thev program kids, rather than the other way 
around." 



13a COMPVIE! MovWaS 



Ihe Light Pen 



at^thc 



Right Price: 




5-24- 



Less is more. This 
maxim has never been 
more true than now with 
the introduction of our new 
Edumate Light Pen. This 
affordable and reliable tool 
was originally designed and 
developed for use with our 
Learning Center educational soft- 
ware—however, it is the perfect 
accessory for your Atari 400/800, 
VIC-20 or Commodore 64, regardless 
of application. Response has been so 
overwhelming that we now announce a 
new price schedule for quantity orders: 

1-4-«29«»'each 

»20«^each 25-99— «19^« each 



100 and more— *17" each 

Order now! See your local dealer or order direct. 

New catalog $2.00. Visa and MasterCard accepted— 

please add $2.00 for postage and handling. 

Call toll free! 

1-800-334-SQFT 

DEALER IirQTriRIES INVITED 






a division of FUTUBB HOUSE — dept. c 
P.O. box 3470, cliapel hill, nortli Carolina 27514, 919-967-0861 




Bui drill picigianis have n place, ospociailv 
whun they are tun and exciting, and when Ihev 
teach new tacts and concepts. 

One drill-type package 1 recommend is The 
LctiDiiii;^ Center, written bv Bruce Mitchell. Bruce 
and his wife Diane run the Small World kinder- 
garten and preschool in Durham, North Carolina. 
Diane is one of Small World's teachers. Bruce and 
Diane also have two young sons. Bruce's programs 
are based on experiences with his sons, one ot 
whom had a learning disabilitv, and on several 
years experience with kids at Small World. 

The programs are divided into three areas: 
Special Skills, Math and Number Skills, and Lan- 
guage Skills. The Special Skills section covers 
identification of colors, color names, and shape 
recognition and differentiation. The Math and 
Number Skills section covers countintz, number 
recognition, addition and subtraction, and ones 
and tens. The Language Skills section includes 
programs tor alphabet recognition, letter se- 
quence, and symbol discrimination. 

Children can interact with the programs using 
the computer keyboard or an inexpensive light 
pen sold bv Tlic Lcaniiii;^ Center's distributor, the 
Programmer's Institute. The programs are very 
friendly ancl easy to use. Thev are appropriate 
even for the youngest, non-reading children. Mv 
three-year-old, Eric, likes them a lot- especially 
the "Count with Me" program that lets him "count 
the monsters." 

My only criticism is that the color program is 
sometimes not responsive to the light pen. 1 
learned that this can be corrected bv turning up 
mv monitor's contrast control. The problem is 
present only in the Atari version and will be cor- 
rected with a new, more sensitive Atari light pen 
soon to be available from Programmer's histitute. 

The Learning Center programs cost $74.95 for a 
cassette and S79.95 for a diskette. I have the ver- 
sion that runs on the Atari 400/800. I understand 
they also run on the VIC, the Commodore 64, the 
TRS-80 Model I, Model III, and Color Computer, 
the Apple, and the TI-99/4A. 

The Edumate'' light pen costs $34.95. To 
find out more about the light pen and Tlie Le(ir)iiiig 
Center package, contact: 

The Pn>'^raiui!ier''f lji>titutv 
P.O. Box 3191 
Ouipcl Hill, NC 275U 
919-967-0S61 

KinderComp 

Two other excellent software packages are Kinder- 
Comp and Rhymes & Riddles, distributed by Spin- 
naker Software Corporation of Cambridge, Mas- 
sachusetts. Both packages employ several teach- 
ing philosophies. They are so attractive and fun 
to use that they have captivated my entire family. 



inckrding three-year-old Eric, seven-vear-old 
Catie, and their parents. 

Each package is S29.95. They are available for 
the Atari computers, the Apple 11 -I- (48K, DOS 
3.3) and He, and the IBM PC. Contact: 

Spiniuiker Softwure Corponilio}! 
215 Firsl Street 
Cttiiibrids^e, MA 02142 
617-SbS-47(H} . 

Ki)iderCon!p was written by Doug Da\'is for 
his daughter Amy. The name makes it sound like 
a collection of arithmetic programs, but it is really 
six programs that teach a diverse group of numer- 
ical and alphabet-oriented skills. 

One ot the programs is called "Draw." It can 
be used by even the youngest children (say, kids 
under two). To work the program, the child twists 
a joystick and creates multicolored, musical pic- 
tures on the cHispIay screen. 

My three-year-old had no problem using 
Draw to create all sorts of shapes. When 1 asked 
him to tell me what he was drawing, I was bog- 
gled. "Up here, Daddy," he said, "is an upside- 
down two. Over here is a house. These are steps. 
This is the roof. This here is the room where the 
doggie lives. This isa hotel. That's a big swimming 
pool. Over here is the fire escape. This green stuff 
is Hulk Grass. It's bigger than the hotel." 

Draw is a super program because of its visual 
and auditory ieedback, because it's so easy to 
use, and because it stimulates a child's manual 
dexterity, creativity, and artistic skills. 

The other KinderComp programs are more 
focused and less open-ended. But thev arc original 
and exciting. "Scribble" amplifies anti animates a 
child's random scribbles. "Names" turns a chiki's 
name into a fascinating sound and light show. 
(Boy, was 1 jealous when Eric turned his name 
into a hilarious musical cartoon. I never got that 
kind of reinforcement with my name "Fred.") 

"Sequence" helps kids learn number se- 
quence; "Letters" teaches them lowercase letters 
and the location of letters on the keyboard; and 
"Match" is a great pattern-matching game. 

Both the Lear)nng Center programs from Pro- 
grammer's Institute and KinderComp from Spin- 
naker are valuable for the speeifie skills they teach 
young children. But they are equally valuable as 
"doorways" for children to enter the world of 
computers. Even the vcnmgesl children can use 
the computer for fun, purposeful activities that 
theif control. They learn the computer keyboard. 
Thev learn how to manipulate and respond to 
material on the display screen. They learn how to 
operate the computer and run programs. 

Computer skills still baffle and intimidate a 
large number of adults. People once believed that 
mastery of these skills required a college educa- 



138 COMPUH! Mav1983 



tion. Yet The Learning Center and KinderContp teach 
these skills to little kids who are still running 
around in diapers. 

An important aspect of toddler software is 
the way it reinforces children's response - that is, 
the way it responds to kids' right and wrong an- 
swers. Both The Learning Cetiter (LC) and Kinder- 
Contp (KC) score high in this category. For right 
answers, LC gives a happy face and a happy tune; 
KC gives a happy face with a wink. For wrong 
answers, LC gives a sad face and a toot; KC gives 
a sad face crying a big tear. 

I like both packages' responses to wrong an- 
swers because they are quickly over and do not 
intimidate a child. I like KC's response very much 
because the computer doesn't show disapproval 
or anger when the child errs. Instead it becomes 
sad. 

KC is good also because it gives the child hints 
when he is wrong, and eventually gives him the 
right answer. But after the child gets an answer 
wrong, he is not rewarded for later getting it right. 
This confused my son Eric. When he didn't get a 
happy face on the screen for an answer at which he 
had worked especially hard, he wilted a little bit. 

On the other hand, KC is especially good 
because it lets the child follow his progress with a 
string of pluses ( -}- ) on the screen (one "plus" for 
each correct answer). And the child gets a special 
reward for answering a series of questions cor- 
rectly. This feature made a big hit with Eric. 

Last, I also recommend Rhymes & Riddles, 
another package from Spinnaker. R&R was writ- 
ten by a husband and wife team. The format is 
"updated, nonviolent Hangman." On the screen 
appear a bunch of dashes. The dashes represent 
missing letters. The child tries to guess the letters. 
By guessing all the letters, a child builds either 1) 
a nursery rhyme, 2) the answer to a riddle (Sample 
riddle: Why can't bikes stand up? Answer: Because 
they are two tired.), or 3) a famous saying. 

If a child doesn't guess the right letters after a 
certain number of tries, she doesn't see some poor 
little man or woman get hanged. Instead, she 
builds a sad face, and the program displays the 
correct letters. 

All three games (The Learning Center, Kinder- 
Comp, and Rhymes & Riddles) help kids learn the 
computer keyboard, the letters of the alphabet, 
and the spelling of different words. The kids' 
learning is reinforced with colorgraphics pictures 
and musical segments taken from nursery rhymes 
and the children's songs. 

Kids' Computer Magazines 

Software for kids isn't the only thing that's hap- 
pening. There are also a growing number of kids' 
computer magazines. Three good ones that I 
recommend are: 



CompuKids ($16/vear; $9/half-year) P.O. Box 
874, Sedalia, MO 65301. Call (toll-free) 800- 
822-KIDS. Wide range of articles, tutorials, 
interviews, stories, puzzles, and games for 
kids just getting started in computers. 
Elementary school and junior high. Also, 
Compu Kids Computer Club (for an additional 
$8/year). 

Enter ($12,95/year) Children's Television 
Workshop, One Lincoln Plaza, New York, 
NY 10023. Call 212-595-3456. Like CompuKids, 
a wide range of articles, stories, puzzles, 
games, etc. Glossy, full-color format pat- 
terned after CTW's Sesame Street and 3-2-1 
Contact magazines. For kids seven and up. 

Turtle Nezvs and Logo Neioslettcr (Kids $9/year; 
Adults $25/year) Young Peoples' Logo As- 
sociation, 1208 Hillsdale Drive, Richardson, 
TX 75081. Call 214-783-7548. Focus on Logo, 
PILOT, and Turtle Graphics programming, 
but also features articles and programs in 
BASIC. Education, entertainment, and ma- 
terial to help kids with special needs. For 
kids seven and up. 

All three of these magazines encourage kids 
to contribute articles, stories, and programs. C 



VIC.20 ATARI 




.i .4 A-m\S 



CHILD 

DEVELOPMENT 

SERIES 

(forttie3.5K VICand 
16K ATARI) 

ADD/SUB— 516.95 

Displays single or multiple 

digits with Of w/o pictures, 

borrows, carries, scoring, 

and audio/video feedback. 



LOST!— S16.95 

A small child is lost. 

You lead the search teams. 

"Help/Hint" and 

"Save" Functions. 

Develops deductive reasoning. 

BECi IS composed ot professionals dedicated 

providing non-irivia! educational materials lor tfie 

computer In addition to our own software, we carr 

line of evaluated hardware and software. Send 

(refundable) for our catalog. 




to 

home 
y a full 
S2 



Serjd ctieck or money order to: 
BOSTON EDUCATIONAL COMPUTING, INC. 

78 Dartmoutti Street, Boston, MA 02116 
(617)536-5116 'MA res. add 5% tax 



May 1983 COMPUTE! '.iV 



FRIENDS OF THE TURTLE 



David D Thornburg. Associate Editor 




Robots Are Turtles, Too 

With the continuing development of excellent 
turtle graphics environments on every computer 
with a halfway decent display, it is easv to lose 
sight of the fact that the turtle was originally a 
computer-controlled robot. The power and ease 
of turtle graphics have allowed the screen-based 
progeny to totally eclipse their mechanical 
forebears. 

While Friends of the Turtle supports and 
encourages the use of mechanical turtles such as 
the Big Trak and the Terrapin Turtle, we haven't 
received many comments from the users of these 
devices. Because of the recent entry of the Heath 
and Androbot robots (see this month's Computers 
And Socict}/ column), 1 think it is about time for us 
to make it clear that we will grow even more ag- 
gressive in our support of turtles - both mechani- 
cal and screen-oriented. 

Although people who use turtles often share 
a common programming language, the interests 
of people who use one type of turtle are different 
from those who use the other. The speed, preci- 
sion, color, and available complexity of a display 
turtle present challenges of a different sort from 
those of a mechanical, imprecise, and (relatively) 
slow robot. Where the user of screen turtles might 
be interested in the creation of landscapes, the 
user of a robot may be more interested in solving 
mazes. 

Both people may use the same language (e.g., 
Logo) and computer system, but each has a dif- 
ferent set of objectives. We want this column to 
be a comfortable home to all turtle users. You can 
help make it one by sharing your applications 
with us. 

For example, one marvelous application for 
the Big Trak was developed by Katie Thornburg 
for use with school children between second and 
sixth grades. She uses several dozen pieces of 1 x 
4 inch wood cut into 13-inch lengths (the length 
corresponding to one forward unit of Big Trak 
motion). She places these pieces of wood on a 4 x 
8-foot sheet of pegboard to create a maze that 

140 COMPU1S MoyWaS 



each child must "program" his or her way out of. 

By having the constraints of a maze (rather 
than a more general problem, such as moving in a 
square path), the children are highly motivated to 
create error-free programs. Additional challenges 
can be created by having two teams race against 
each other, or by having each of two teams con- 
struct a maze to be solved by the other team. This 
inexpensive addition to the Big Trak has greatly 
increased the value of this tool in the computer 
classroom. 

Turtles At The CES 

There were at least three things I saw at the Winter 
Consumer Electronics Show that are of value to 
friends of the turtle. The first of these was the 
introduction of the Mattel Aquarius computer 
(currently selling for under $170) with an under 
$100 Logo cartridge. While the graphics resolution 
on this computer isn't tremendous, I was im- 
pressed by the fact that Mattel's Logo was de- 
veloped by The LISP Company. Since Logo is a 
user-friendly version of LISP (L/St Processing), I 
felt comforted to know that this would not be a 
pure turtle graphics package passing itself off as 
Logo. 

The second delight was a preview of a forth- 
coming turtle graphics package for the Commo- 
dore 64 from HES. I am very impressed with this 
program. Once 1 get a copy, I will review it in this 
column. 

The third development of interest was the 
introduction of a new company, Androbot. This 
company, founded by Atari founder Nolan 
Bushnell, introduced a computer-operated robot 
named TOPO and a self-contained android named 
B.O.B. (Brains On Board). TOPO is described in 
this month's Computers And Society column, so 1 
won't say any more about it here. 

B.O.B. is a thoroughly engaging creation 
programmed to "seek" people out and initiate 
"conversations" with them. To help with this 
task, B.O.B. sports five Polaroid ultrasonic posi- 
tion sensors to map the environment, and two IR 



NENK 



presents 




Captain Cosmo is an 

exciting fast-action video 
arcadegame.lt can be play- 
ed by 1 to 4 players and has 
99 skiH levels. Tr/ it and you 
can't let go! 

Requires Atari 400/800 with 
32 K Joysticks, and a Disl^ 
Drive. 



Delta Squadron is a 

strategic war game that really 
puts you in the pilot's seat. 
With this game you will ex- 
perience the thrill and excite- 
ment of a real space pilot. 
Delta Squadron is a "must" 
for all strategic game enthu- 
siasts, and a change of pace 
for those who wants a chal- 
lenge! 

Requires 64K Apple II with 
DOS 3.3 and paddle. 





Superbowl Football 

is a realistic football game, 
You can design your own 
plays and has thousands of 
defensive and offensive 
plays. This is the ultimate in 
computer football games. 
Requires Atari 400/800 with 
48K a Disk Drive and Joysticks. 



We revolutionize our packaging designs to be convenient, 
compact, durable, and to protect the diskettes from dus! and 
moisture. 

Ask for us at your local stores or your distributor. 



N=XX 



NEXA CORPORATION 

p. O- Box 26468 

San Francisco, CA 94126-6468 

(41 5) 387-5800 




Each of the PDf Preschool Challengers 
develops critical pre-reading skills 
in the 3-6 year old- 
shape and letter recognition, 
number concepts, listening skills, 
spacial relationship, classification 
and eye/hand coordination. 

At the same time, they fascinate arid delight the child 
hour after hour with lovable, interactive playmates. 

All PDI Preschool Challengers feature brilliant graphics, 

color, music and exciting sound effects, and some 

have voice narrations. 

Available 16K ATARI {Cassette w/joystick) and 

24K ATARI (Disk w/joystick) Preschool IQ Builder 1 

available on 32K APPLE (Disk). 



THE ADVENTURES OF OSWALD 

Using the joystick, your child helps Oswald climb, 
run and jump through two different adventures. 
Includes "Oswald and the Golden Key" in which 
Oswald eludes a pesky ghost 

SAMMY THE SEA SERPENT 

Features three story adventure games in which 
Sammy gets into a lot of tight spots-including 
finding his way back to the sea. 

HERE COMES VIOLET 

Violet (her name and color!) has a real problem- 
she's the cutest monster ever seen, BUT she 
wants to be ugly so she can scare people. A 
delightful interactive adventure. 

PRESCHOOL 10 BUILDER 1 

A stimulation program m two parts. 

a, Decide if pairs of figures are similar or not. 

b. fvlalch the letter on the screen with the correct 
one on the keyboard. 

PRESCHOOL 10 BUILDER 2 

The face on the screen sings a happy song when 
the correct match is made between letters, num- 
bers, symbols or words. 6 levels of difficulty. 



Available at leading stores or direct from PDI. 

ATARI IS a iracjemark of A:ar:. Inc. Accie s a Iradema'H ol ApDie Computer Corp 








m 


~^'\ 
















1. 


\ 




1 


— V 






^ 










^^ 


^^B 



Program Design, Inc. 1 1 Idar Court, Greenwich, CT 06830 



sensors to find people (and other warm bodies 
such as stoves, spotlij^hts, etc.). These sensors 
feed information to a central computer that uses 
three 8088 processors with up to 3 M bvtes of 
RAIVI. 

What makes B.O.B. so interesting is its po- 
tential to dynamically proi^ram itself. In principle, 
B.O.B. can make a map of a room and develop an 
optimal path for perl'orming some task, such as 
vacuuming a rug. 

B.O.B. charmed everyone \vho saw it - espe- 
cialK' when it became clear that no one knew 
exactly what B.O.B. was going to do next, or how 
it was going to get out of a jam. 

Androids using adaptive programming tech- 
niques represent the next generatit>n of robots. If 
vou write programs using a list processing lan- 
guage such as Logo, you have all the tools vou 
neeci to develop adaptive programs yourself. 

Robots can (and will) he very sophisticated in 
the near future. But thev are a lot of fun as well. 
So don't forget that Friends of the Turtle is a place 
for ideas on both screen and mechanical turtles. 

Let me hear from vou! 

fcji'/zi/.s of the Turtle 

P.O. Box 1317 

L(K Altofi, CA 94022 © 



FREE 




Educational 

Courseware 

Catalog With Over 1000 

Programs! 

We have programs for your 

ATARI' . Over 800 chapter 

length programs available! 

We developed tlie "Talk & Tt'ath" 
programs for Atari. We're now mak 
ing them available to you in courses 
as well as individual programs. 

And, programs for your TRS-80" 

We offer reading programs in 
reading comprehension, econt^mics, 
physics, math, auto mechanics, 
history, great classics, general shop 
practices and many more. 
A Leader in Audio Visual Interactive 
instruction for over 20 Years, 

Write or call for our free catalog. 



DORSETT 

Educational Systems, Inc. 

(405) 288-2300 

Box 1226, Norman, OK 73070 




S 




MAKE YOUR VIC-20 only 
COMPUTER TALK OTQOO 

when you plug in our 



VOICE SYNTHESIZER 



You can program an unlimited number of words and sentences and even adjust volume and pitch. 
You can make: • Adventure games that talk • Real sound action games 

This voice synthesizer is VOTRAX based and has features equivalent to other models costing over 
$370.00. To make programming even easier, our unique voice editor will help you create words and 
sentences with easy to read, easy to use symbols. The data from the voice editor can then be easily 
transferred to your own programs to make customized talkies. 



Voice Synthesizer {Dim nm mciudt spmkio. 
Voice Editor Tape 

"15 DAY FREE TRIAL" 

• We have the lowest VIC-20 prices 

• We have over 500 programs 

• Visa — Mastercharge — C.O.D. 

• We love our customers! 



List $109.95 
List $14.95 



SALE $79,00 
SALES 9,95 



ENTERPRIZES 

BOX 550, BARRfNGTON, ILLINOIS 60010 
Phone 312/382-5244 to order 



M? COMPUTE! MavW83 



Sinclair/Timex 

Guess That Animal 



Ralph Kennedy 



T///.S- article adapts a prcvioushj puhUshed COMPUTE! 
piv;^yaui to the Siiiclaii- ZX-Sl . It is also a brief tutorial 
on the special features of the ZX-Sl 's BASIC, showiiig 
how you can reload programs without loshig data pre- 
viously saved . Tlie prognv>i requires 16K. 



This is an tidiiption tor tho Sinclair ZX-81 of Daniel 
Hastic's "Guess that Animal!" program, which 
appeared in the August 1982 issue of COMPUTE!. 
The I6K RAM pack is required. 

The most significant difference between Has- 
tie's versions (for PET and Atari) and the ZX-81 
version is that no tiata tapes are used. The ZX-81 
is not equipped to read or write such tapes, but it 
does save all variables and arrays when it saves 
programs. This means that if vou plav the game 
for a while and then save the program, it will be 
more "knowledgeable" when it is reloaded than 
it was in its pristine state. 

Saving The Program 

Incidentally, t)n those occasions when vou have 
no need of a record of the values of the variables 
in a program you are saving, you can save an 
amount of time roughly proportional to the 
amount of memory set aside for variables and 
arrays simply by entering CLEAR before saving 
the program. 

When you have typed this program into your 
ZX-Sl and have assured vourself that all is well 
with it, enter CLEAR and save the program once 
so that you have on tape a reasonably quick- 
loading version without variables. Later, after 
you've played the game for .some time and want 
to save program and data, simpiv respond with a 
N to the question "Would you like to try again?" 
and you will then sec instructions on saving the 
data. 

A version saved in accordance with these 
instructions will begin running automatically 
when it is loaded back into the computer. If you 
save the program by stopping it and entering 
SAVE, be sure to start it using GOTO START when 
you reload. Using RUN will wipe out all the data 
you spent so much time saving and loading. 

ZX-81 BASIC Special Features 

Two rather nice features of the ZX-81's BASIC are 
exploited in this program to aid in documentation 



and in ease of use. These are (1) its acceptance of 
long variables (with all characters being signifi- 
cant), and (2) its acceptance of such commands as 
GOTO MEMCHECK, GOSUB TRUNCATE, etc. 

These features enable a programmer to write 
a well-documented program with fewer REM 
statements than would otherwise be needed, since 
lines like 467 GOTO MEMCHECK are reasonably 
self-documenting. They also make possible the 
use, mentioned above, of GOTO START to start a 
program without losing data or, when CONT 
doesn't work, to get back into a stopped program 
at the right place and without losing data. 

Finally, these special features enable the 
programmer during debugging to use such com- 
mands as LIST GET or LIST ASK to list sections of 
the program where problems are suspected. All 
this c^n be quite hanciv for those whose memory 
for numbers leaves something to be desired. Just 
be sure that the first thing your program does is 
define the relevant variables, and you're in 
business. 



Note: Underlined characters should be entered in inverse 
video. 

10 PRINT "IF YOU HAVE USED RUN , ALL BUT S 

TARTER DATA HAVE BEEN LOST." 
20 PRINT 
30 PRINT "PRESS BREAK , RELOAD, AND USE GO 

TO START IF YOU WANT TO USE OLD D 

ATA . " 
40 PRINT 
50 PRINT AT 10,0; "IF YOU ENTER AN ANIMAL ~ 

OR A QUESTION INCORRECTLY," 
60 PRINT "YOU CAN CORRECT YOUR MISTAKE BY 

ENTERING ""s"" IMMEDIATELY." 
70 PRINT "YOU WILL THEN BE GIVEN A CHANCE 

TO MAKE A NEW ENTRY." 
80 PRINT AT 21,0; "PRESS n/L TO START." 
85 PAUSE 3E4 
90 FAST 

100 REM *GUESS THAT ANIMAL* 
110 REM 

170 REM **READ STARTER DATA** 
180 GOSUB 900 
2 40 REM ** START GAME ** 
2 50 CLS 
260 PRINT "THINK OF AN ANIMAL, AND I WILL ' 

TRY TO GUESS IT. " 
280 PRINT AT 21, 0; "PRESS N/L WHEN READY. 

290 PAUSE 3E4 

MovWS3 COMPUn! 143 



295 
300 

310 
320 
322 
324 
328 
330 
333 
337 
3 40 
341 
342 
344 
350 
352 
354 
360 
362 
365 
440 
450 
460 
465 
467 
470 
475 
480 
482 

483 
485 
490 
495 
497 

500 

520 
521 
523 

525 

527 
530 

532 

533 
535 
540 

550 
560 
565 

567 
570 

575 
580 
600 
610 

625 
650 
655 
660 
665 
670 
675 



CLS 

REM ** SET UP ANSWER STRING AND POINTE 

R ** 

LET C?="" 

FOR Z=l TO NS 

GOSUB ASK 

NEXT Z 

REM SEARCH FOR MATCH 

LET K=LEN C$ 

FOR 1= NS+1 TO N 

IF TS(I, TO K) =C? THEN GOTO 350 

NEXT I 

REM NO MATCH FOUND 

GOTO 450 

REM MATCH FOUND 

LET Z=I 

LET I=N 

NEXT I 

GOSUB ASK 

GOTO 3 30 

REM 

REM 

REM *GUESSED IT OR GIVE UP* 

IF A$="Y" THEN PRINT G? 

IF A5="Y" THEN GOTO 700 

GOTO MEMCHECK 

PRINT "I GIVE UP, WHAT IS IT?" 

INPUT M$ 

IF M$ ="" THEN GOTO 475 

IF LEN M$>=35 THEN PRINT " TOO LONG. MO 

PI FY NAME " 

IF LEN M$>=35 THEN GOTO 475 

PRINT " ";M5 

PRINT 

LET H$=Q5(Z) (7 TO ) 

GOSUB CLEAR SCREEN 

PRINT "WHAT WOULD BE A GOOD QUESTION T 

TELL THAT FROM "; H$ 

INPUT N$ 

IF N$="S" THEN GOTO 5010 

IF N$="" THEN GOTO 520 

IF LEN N$>45 THEN PRINT "QUESTION IS. _T 

00 LONG. TRY ANOTHER " 

IF LEN N$>45 THEN GOTO 520 

IF N$(LEN N?)< > "?" THEN LET N?=N$+"? 

II 

GOSUB CLEAR SCREEN 

PRINT N? 

PRINT 

PRINT "WHAT WOULD BE THE ANSWER FOR "; 

M$;"?";" "; 
GOSUB GET 
LET R5=INKEY$ 

IF R$< >"S" AND R?< > "Y" AND R? < > " 
N" THEN GOTO 5 50 
IF R?="S" THEN GOTO 5040 

PRINT ("YES" AND R$="Y" )+( "NO" AND R?= 
"N") 

PAUSE 60 
PRINT 
REM 
REM * 
STION 

LET Q$(Z)=N? 

REM * ADD OLD AND NEW FINAL GUESSES 
LET X$=T$(Z) 
GOSUB TRUNCATE 
LET T5(N+1)=T?(Z, TO K)+"Y" 
LET T5(n+2)=T$(Z, to K)+"N" 
LET q5(N + 1) = "IS IT "+(m5 AljJD R? 
H? AND R$="N")+"?" 



REPLACE FINAL GUESS WITH NEW QUE 
* 



680 

690 
695 
700 
710 
740 
750 
760 
800 
810 
820 
830 

840 
850 
860 
870 
900 

905 

910 
920 
930 

940 
950 

960 

970 

980 

1010 

1020 

1030 

1040 

1050 

1060 

1070 

1080 

1090 

1100 

1110 

1120 

1130 

1140 

1150 

1160 

1170 

1180 

1190 

1200 

1210 

1220 

1230 

1240 

1250 

1280 

1290 

1295 

1349 

1350 

1360 

1370 

1410 

1420 

1430 

1440 

1450 



"+(m$ and R$="N" )+( 



LET Q$(N+2)="IS IT 

H? AND R$="Y")+"?" 

LET N=N+2 

GOSUB CLEAR SCREEN 

PRINT "WOULD YOU LIKE TO TRY AGAIN?" 

GOSUB GET 

LET A$=INKEY5 

IF A$="Y" THEN GOTO 250 

IF A?< >"N" THEN GOTO 710 

CLS 

PRINT "READY TAPE RECORDER FOR SAVE . " 

PRINT 

PRINT "PRESS PLAY AND RECORD , AND THEN 

N/L TO SAVE PROGRAM AND DATA." 
PAUSE 4E4 

SAVE "GUESS THAT ANIMAL" 
CLS 

GOTO 240 

REM ** INITIALIZE VARIABLES WITH START 
ER DATA ** 
CLEAR 



DIM T$(101,20) 
DIM Q$(101,45) 
LET START=240 
ASK=1350 
TRUNCATE=1510 
CLEAR SCREEN=2000 
MEMCHECK=2510 
GET=3010 
N=ll 
NS=3 

T$(1)="S" 
T$(2)="S" 
T$(3)="S" 
T$(4)="NNN" 
T5(5)="NNY" 
T$(6)="NYN" 
T5(7)="NYY" 
T$C8)="YNN" 
T5(9)="YNY" 



LET 

LET 

LET 

LET 

LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 
LET 



T?(10)="YYN" 



'YYY" 

'DOES IT HAVE FOUR 
'IS IT DOMESTIC?" 
'DOES IT EAT MEAT?" 
'IS IT A WORM?" 

AN EAGLE?" 

A CHICKEN?" 

A MAN?" 

AN ELEPHANT? 

A WOLF?" 
A COW?" 



FEET?' 



'IS 
'IS 
'IS 
'IS 
'IS 
IS 



IT 
IT 
IT 
IT 
IT 
IT 



T{11)=' 

Q?(l) = 

Q?(2)=' 

Q5C3) = 

Q?(4)=- 

Q?(5)=' 

Q?(6)=' 

Q?(7) = 

Q$(8) = 
LET Q$(9) = 
LET Q$(10)=' 
LET Q$(11)="IS IT A DOG?" 
LET GS="GOOD, I GUESSED IT." 
RETURN 
REM 
REM 

REM PRINTS QUESTIONS AND GETS ANSWERS 
GOSUB CLEAR SCREEN 
PRINT Q5(z) ; " "? 
GOSUB GET 
LET A$=INKEY$ 
IF A$="Y" OR A5="N" THEN GOTO 1440 



Y")+( 



GOTO 13 70 
LET C$=C5+A$ 
PRINT ( " YES " 
"N") 

1460 RETURN 

1470 REM 

1480 REM 

1500 REM TRUNCATE 



AND A?="Y")+("NO" AND A9= 



(FINDS LAST NONSPACE) 



1Ji COMPUTE! MOV1963 



1510 FOR K=l TO LEN X$ 

1520 IF X$(K)=" " THEN GOTO 1540 

1530 NEXT K 

1540 LET K=K-1 

15 50 RETURN 

1999 REM CLEAR SCREEN WHEN FULL 

2000 IF PEEK 16442<=5 THEN CLS 
2010 RETURN 

2020 REM 

2 500 REM MEMCHECK 

2510 GOSUB CLEAR SCREEN 

2520 IF N<=99 THEN GOTO 470 

2530 CLS 

2 540 PRINT "NO ROOM FOR NEW ANIMALS." 

2550 PRINT AT 5,10; " MENU " 

2 560 PRINT AT 10, 0; "1. ERASE CURRENT ANI 

MALS AND START OVER." 
2570 PRINT "2. CONTINUE PLAYING WITH CURRE 

NT FILE." 
2580 PRINT "3. SAVE CURRENT FILE." 
2590 PRINT "4. FINISH." 

2600 PRINT AT 21,0; "ENTER OPTION NUMBER." 
2610 LET A?=INKEY? 
2630 IF A5="l" THEN GOTO 180 
2640 IF A$="2" THEN GOTO START 
2650 IF A$="3" THEN GOTO 800 
2660 IF A$="4" THEN STOP 
2670 GOTO 2610 

3000 REM WAIT TO GET SINGLE CHARACTER FROM 
KEYBOARD 

3 010 SLOW 

3020 IF INKEY$< > 

3030 IF INKEY? = 

3040 FAST 

3050 RETURN 

3060 REM 

3 070 REM 

5000 REM CORRECTIONS 

5010 CLS 

5015 PRINT "ENTER NEW ANIMAL." 

5020 INPUT M$ 

5030 GOTO 482 

5 040 CLS 

5042 PRINT "ENTER NEW QUESTION 

5045 FAST 

5050 INPUT N$ 

5060 GOTO 525 



THEN GOTO 3020 
THEN GOTO 3030 



COMPUTE! 

The Resource, 



Maxell Floppy Disks 

The Mini-Disks 
with maximum 
quality. 

Dealer inquiries invited. C.O.D's accepted, 
Call FREE (800) 235-4137. 





PACinC EXCHANGES 

UIO FoomLl] BlvJ 

San Li;i% Ofeipo CA^.!4<i; 

In Col talHSOill 5^3.5,115 0, 

:8n5i54;M(i:j7 




An Intriguing 

New Release from 
COMPUTE! Books: 

Every Kid's 

First Book 

Of Robots 

And Computers 

By David Thornburg 

From the author's preface: 
"Tills book allows children to develop 
skills in computer programming and 
geometry through the use of a com- 
monly available toy - the Big Irak '" 
robot vehicle. Programming is intro- 
duced as the commuriication tool 
through which the child conveys 
instructions to the machine. Once 
the machine's language limita- 
tions are understood, it can be 
made to follow any procedure 
which has been entered by 
the user. 

"Our use of turtle commands 
as the programming language ' 
mirrors the process- based 
descriptions commonly used by 
children. For example, a child is likely to 
describe a nearby location, such as a friend's house, by a 
procedure |Go two blocks, turn right, go another block, turn 
left,...). Because turtle geometry has been incorporated as 
the graphics environment in several computer languages 
available for the popular desk-top computers, these pro- 
gramming ideas can continue to be used as the child learns 
to operate other computers. " 

In Every Kid's First Book Of Robots And Computers, author 
David Thornburg conveys a uniguely exciting learning 
experience for children, parents, and teachers. The book 
uses Big Irak, PILOT/LOGO type languages, and Turtle 
Tiles'" to explore the concepts and techniques of robot/ 
computer programming. Turtle Tiles, inclutied with every 
book, are designed to provide hands-on programming 
experience to children without access to a Big Irak or a 
personal computer. Additionally, the Tiles can be used in 
conjunction with either of these items to share and reinforce 
the exercises in the book. 

Ask for 

Every Kid's First Book Of Robots And Computers 

at your computer retailer, local bookstore. 

or order directly from: 

COMPUTE! Books 
P.O. Box 5406 
Greensboro, NC 
27403 

54,95 plus SI. 00 shipping and handling. 

ISBN 0-942386-05- 1 . Perfect bound. 96 pages plus Turtle 

Tiles'". Fully illustrated. 

Dealer and educator quantity discounts are available. 

Big TMk 15 3 [rsdemark of the Mrlion BiMley Company, 

Turtle Tiles are rf trademark of David D. Thbrnburg and Innovision, Ire 




For Fastest Service, 
Caff Toll Free 
800-334-0868 

In NC 91 9-275-9809 



VIC Kaleidoscope 



Alon W Poole 



T)y VIC Kaleidoscope. You'll fiud the colors and Diii^ic 
iiiesiiicriziiis^. And i/oii cnii freeze the di^pliu/ mid turn 
the found offns \foii please. Foniin/ size VIC. 



This program produces an endless display of col- 
orful patterns, along with "music" related to the 
pattern being drawn. If you see a design that is 
especiallv pleasing, press the space bar to freeze 
the picture. Press the space bar again to restart 
the kaleidoscope. Press the S key to turn the sound 
on or off. 

Variables 

A: Used in the MOD function and used as the 
address to plot a square 

B: Used in the MOD function 

C: Color number 

CC: Color number for border 

I, J: Loop counters 

K$: Key pressed 

N: Number of function being used to calculate 

coordinates of points 

R: Random number 

S: Kaleidoscope stopped flag. 1 = kaleidoscope 

going, 0= kaleidoscope stopped 

SI: Speaker adciress 

SA: Screen memory starting address 

SO: Sound flag. 1 = sound on, = sound off 

X, Y: Position to plot a square 

20 GOSUB5000 
9 7 REM 

98 REM *** MAIN LOOP *** 

99 REM 

100 FORI=0TO999999 
110 FORJ=0TOI0 

120 ONNGOSU 8500,5 50,600, 6 5 0,700, 7 50 

129 REM PLOT POINTS 

1 30 A=SA+22 *Y+X : POKEA, 160 : POKEA+30720 , C 
140 A=SA+22*( 2 1-Y)+X: POKEA, 160: POKEA+30720 

,C 
150 A=SA+22*Y+21-X: POKEA, 160: POKEA+307 20, C 
160 A=SA+22*(21-Y)+21-X: POKEA, 160 :POKEA+30 

7 20,C 
170 A=SA+2 2*X+Y: POKEA, 160 ; POKEA+30720 , C 
180 A=SA+22*X+21-Y:P0KEA, 160 •.POKEA+30720, C 
190 A=SA+22*( 2 1-X)+Y: POKEA, 160: POKEA+30720 

,C 
200 A=SA+22*(21-X)+21-Y:POKEA, 160:POKEA+30 

720, C 

146 COMPUTE! Mav W63 



205 GETK$:IFK$="S"THENSD=1-SD:IFSD=0THENPO 

KEV,0 
210 IFSD=0THEN230 

2 20 POKES! , 1 28+ ( X+Y ) *2 . 8 : POKEV , 1 5 
230 IFK?=" "THENS=1-S 
235 IFS=0THENPOKEV,0:GETK$tGOTO230 

239 REM RANDOMLY CHANGE COLOR, FUNCTION, A 
ND BORDER 

240 IFRNDd) <.1THENC=INT(RND(1)*8) 

2 70 IFRRDd) <.07THENN=INTCRND(1)*6 + 1) 
275 IFRND(I) <.065THENGOSUB1000 
280 NEXT: NEXT: END 

497 REM 

498 REM *** FUNCTIONS TO CALCULATE POINTS " 
* ** 

499 REM 

5 00 B=15:X=FNMOD(ABS(l-SGN{j-6)*(j+2) ) ) 

510 B=21;Y=FNMOD(j*J+2*J+7) 

5 20 RETURN 

550 B=18:X=FHM0D(I*J) 

560 B=12:Y=FNM0D(ABS(ABS(I-ABS(2*I-2*J) ) ) ) 

5 70 RETURN 

600 B=20:X=FNMODCI) 
610 B=20:Y=FNMOD(j) 

6 20 RETURN 

6 50 B=12:X=FNM0D(ABS(Y-J) ) 

660 B=20tY=FNMOD(ABS(2*J-ABS(l-ABS(2*I-J) ) 
)+RND(I)*3) 

6 70 RETURN 

700 B=16:X=FNMOD(ABS(I-SGN{J-10)*J) ) 
710 B=21 :Y=FNM0D{I*J) 

7 20 RETURN 

7 50 B=22:X=FNMOD(ABS(3*J-ABS(2*I-ABSC2*I-J 

)))) 
7 60 B= 2 2 : Y=FNMOD ( ABS ( 2 * J-ABS ( 2 *X-ABS ( 2 *X-J 

)))) 
7 70 RETURN 

997 REM 

998 REM *** CHANGE BORDER COLOR *** 

999 REM 

1000 CC=INT(RND(1)*7) 

1010 POKE36879, PEEK ( 36879 )AND2480RCC 

1020 POKE646,CC 

1029 REM CHANGE 2 3RD ROW TO MATCH BORDER 

1030 PRINT" [home! {22 DOWN)"; 
1040 PRINT" (rev) 

1045 POKESA+505 , 160 : POKESA+31225 , CC 

10 50 RETURN 

4997 REM 

4998 REM *** INITIALIZATION *** 

4999 REM 

5000 PRINT" (hOMeI (clear) " : POKE36879 , 8 
5010 PRINTTAB(5) " { RED}k(CYN} A{PUr3l (GRN)e ( 

blu)i{yel}d{wht)oIredJsIcyn)c[pur}o{g 
rn}p{blu}e*' 

5020 PRINT:PRINT:PRINT" [GRNIpRESS SPACE 

BAR TO FREEZE KALEIDOSCOPE" 
5025 PRINT:PRINT"PRESS SPACE BAR AGAIN TO 
CONTINUE" 



UMI Software is Making 
"Home" Work Fun 



V\brclcrQf 1 20 Werm B 



BUT! 



UMI gives you sophisticated word 
processing software complete in 
one package! Wordcraft 20©, with 
a tutorial tape, contains 8K RAM, a 
unique automatic mail list feature, 
and everything else you'll need to 
create picture-perfect documents. 
This fully featured system lets you 
change a character, a word, an entire 
block of text; and sends encoded 
electronic mail. With 4-direction 
scrolling, you see it before you print; 
and it's compatible with any printer. 
With Wordcraft 20©, you'll never be 
at a loss for words again. 



A sophisticated communications pro- 
gram that links you and your VIC^" to 
the world of information, VITERM B is 
compatible with virtually any modem. 
Your access to information banks and 
services over the telephone system is 
astonishing. At your fingertips, you'll 
have DPI news and features, informa- 
tion encyclopedias, discount buying 
services, the stock market and educa- 
tional programs. And, VITERM B 
accesses CompuSeive, THE SOURCE, 
and other similar computer services. 
You'll be able to send and receive 
personal electronic mail, set up per- 
sonal finance programs, make travel 
reservations — all at electronic speed. 
The world is yours at the touch of a 
key with UMI's VITERM B, 



Improve your BASIC program with 
UMI's BUTI treatment. Adding 17 new 
commands to the BASIC language in 
your computer, BUTI formats the VIC" 
to imitate 8K, 3K, or minimum mem- 
or>' configurations. BASIC program 
errors will stop program execution, 
list and mark the line of BASIC where 
the error occurred. Other features are 
single-step execution, renumbering, 
block search & replace, block line 
delete, tape append, and BASIC 
variable dump. 

Simple . , . quick . . . and on command. 
That's the BUTI treatment for your VIC". 




VICEPS — Connects Epson MXl 00 or MX80 to your V1C20"' • Prints 
iiigh-resoiution graphics and character sets using Epson 
Graftrax • Does formatted BASIC program listings 



VI-CALC — 10 memory registers and 4 stacked data • Registers al- 
ways visible • Math function results visible at a single keystroke 



VI-DATA — Powerful data base program on cassette or disk • User- 
defined screen format • Print screen format • Format print 
output • Alphanumeric sort 



VI-CHECK — Manages checkbook • Lists accounts • Makes de- 
posits • Keeps balance current • Lists transactions • Catches 
duplicate entries • Features calculator mode 



FORTH 20 

Structure of PASCAL or COMAL: 

• Speed of machine code — lOtimes fasterthan BASIC • Inter- 
active; both a compiler and an interpreter • Transportable — 
based on FORTH 79-Standard • A language you tailor to your 
application by adding new commands • Comes complete 
with an extensive instuction manual and examples. 




United Microware Industries, Inc. 
3503-C Temple Avenue 
Pomona, CA 91768 (714) 594-1351 

\AC & V1C20 are uademstH of Commodore, inc WQfacf^lH 20 is 
copyrighied by P L IDov«on CompuSen* is a regtsrered 
iracJemafkofHR Block THE SOURCE 15 ^ fegi5:ered iratJemark 
of Source Telecomputing CojporaiKjn 



5030 PRINT:PRINT"PRESS S TO TURN OFF SOUN 

D" 
5035 PRINT:PRINT"PRESS S AGAIN TO TURN SOUN 

D BACK ON" 
5040 PRINT" [04 down}" 

5050 PRINT" (WHT}PRESS RETURN TO BEGIN"; 
5 060 GETKS:R=RtJD(l) : IFK? <>CHR$ ( 13 )THEN5060 
5070 R=RNDCR*1000) 
5080 SD=1:S=1:N=INT{RND(1)*5+1) :C=INT(RND(1 

)*7+l) 
5090 PRINT" [clear! " 
5100 SA=4* ( PEEK ( 36866 )and1 28) +64* (PEEK (3686 

9)AND112) 
5110 S1=36876:V=36878 
5120 DEFFNM0D(a)=INT( (a/B-INT(a/B) ) *B+.05)* 

sgn(a/b) 

5130 RETURN © 



171P 



ENTERPRISE 

CUSTOM COMPUTER EXPANSION CHASSIS 

PRESENT THE ULTIMATE IN EXPANSION AND COOLING CHASSIS 

ALL OF THIS IN A FINE PIECE OF SOLID HARDWOOD FURNITURE. 



• FAN IS IMPEDANCES 
PROTECTED AND OF 
THE HIGHEST QUALITY 

• TOTALLY FUSED 
PROTECTED 

• SOLID HAHDWOOO + 
HARDWOOD PLYWOOD 

• NO PRESS BOARD 

• COOL AIR IS BLOWN 
THROUGH AND 
FILTERED. LIKE ON 
MAIN FRAME 
COMPUTER 

• THE PRICE AT 
RIGHT IS FOR THE 
CABINET SHOWN 
WE ALSOV;iLL BUILD 
CUSTOM TO SUIT 
1 TO 8 DISK DRIVES 
BASIC WOOD 
"OAK- 



DISK DRIVE 



I 



COMPUTER 
KEYBOARD 



SOLID 

HafiO'.'JOnD 

SIDEi 
i-^-COOLlfliL fi 



VIC 20 COMM 64 
Af*Rl Ai^D JIPPLE 

PRICES START 

AT 

S189.95 

Call FOf* iwFOR 
AT l-7M-5?7-9261 

HOURS W Ih.uS 
aOOAM la 600PM 
SUNOAV S 00 to 1 00 



Shipping 

COST NOT 
IMCLUD£D 



pAt PENDING 



VIC-20 .„. CBM 64 

EXPHNQER BDHRDB 




4 Slat for Ihe 64. ToggEe swiicnes and 
reset switch 



P/N C64 



»69.95 



PTl offers the finest selection 
of expander boards available 
for the VIC'20 and CBM 64. 
The design features, quality 
construction, and competitive 
prices make any of them an 
exceptional value. New pro- 
ducts are being added monthly, 
so write for complete catalog. 





B Slot lor Ihe VIC. Toggle switches 
and fcsei Ewiicti 

P/N V36 '79,95 



Slo! for Ihe VIC. No switches, reset, or 
fuse 

P/N V13 '49.95 





^tj^ui^l- 



4 Sloltorthe VIC. Toggle swilches and 
resei switch 
P/U V24 



3 Slot (or Ihe Vic, Slide switcties no 
reset switch 



*69.95 P/N V23 



*59.95 



PRECISION TECHNOLOGY, INC. 

COMPUTER PRODUCTS DIVISION 

P.O. BOX ISAM 

SALT LAKE CITV. UTAH 84115 

ISOII 4S7-e2H 



See your dealer, or place 
your order direct 

VISA-M/C-CHECK-COD 




SOUTHERN AUDIO VIBEO ELECTRONICS. INC 

1782 Marietta Blvd., N.W., Atlanta, Georgia 30318 

Qz. commodore 64— $399.95 




Commodore VIC 20 15900 

VIC 1530 Datassette 62.00 

VIC 1540 Single Disk Drive (VIC 20) 31400 " 

VIC 1541 Single Disc Drive (C-64) 324 00 i 

VIC 1525 Printer |VIC 20 or C64) 322.00 • 

VIC 1600 Telephone Modem 91 .00 

VIC 1 1 1 1 16K Expander 69 00 

VIC 1914-18 Adventure Series (each) 28.00 

VT 106A/107A Program Packages (each) 43.00 

VIC 1930 Visible Sofar System 22 00 

VICLC Choplifter 31.50 

VIABC Astro Blitz 31.50 

VIHFT Household Finance 21.00 

UMI 1619 Alien Blitz 27 00 

UMI 6634 Kosmic Kamikaze 17 00 

UMI 6803 Skymath 1 1 00 

HES G202 Maze of Mikor 1 2.00 

HES C303Turtle Graphics 25.00 

HES C304 Hes Writer 25.00 

Call us for information on new 064 software. 

CARDCO 1 

At Last! Play Atari on your Commodore computer with a Cardco 
card adapter. 

CA/1 Atari Game Adapter 359.00 

CB/6 Six Slot Expansion Interface 66.00 1 

CB/3 Three Slot Expansion Interface 26.00 " 

CE/1 Cassette Interface 29.00 

Maxell. Minf-Disks. B%': 

MD-2D Double sided, double density. For use on Tl, Shugart or J 

equivalent (10 pkg.) S47.50 , 

MD-1 Single sided, single density for mini floppy disc drives ( 

(10 pkg.) 533.50 ; 

Royal Alpha Interface 2001A ] 

Daisy Wheel Printer.*~$495.00.* i 

•With port to interface with TI99/4A. A 

Five print types available: 100 character keyboard (46 keys) with ' 
all keys electronically repeatabie, automatic carriage return and 
line spacing; one touch tab clearance; page end indicator on paper 

support, plus many other features. -i 

Shugart/compact single and double density ca- 
pable SA400 Mini Floppy^ Disk Drive— $260.00. 

125/250K Byte (unformatted) storage. 

SA450 Double sided, double density Mini Floppy— $329.00. 

250/500K Byte (unformatted) storage- 
Get the best prices on hardware and software. For a j 
complete listing of all SAVE's products, send $5.00 for our 1 
catalogue (refundable with your first order). * 
Enjoy the convenience of in-home shopping. Call our toll free i 
number today. • 
Use your American Express, VISA, Mastercard, check or 
money order. Minimum order of S50. Shipping and handling 
charges are extra. All prices are subject to change without 
notice. Allow 2-4 weeks for delivery. Prices good through 
May 15, 1983. 

Order Toll Free 1-800-241-2682 
In Georgia (404) -351-8459 



148 COMPUIE! May«83 








FIVE POWERFUL SOFTWARE 
DEVELOPMENT TOOLS 

P/us Zhc Smtlng J^ew Book 

INSIDE THE VIC 

My: Don Jrmch 

THE BOOK THE TOOLS 



■ Written for both beginners and 
professionals. 



■ Clear, complete explanation of the 
internal workings of the VIC. 



■ Machine language explained so you 
can understand it. 



Hexadecimal and binary made clear. 



■ How to do fast-action graphics, pro- 
gram for joysticks, game paddles and 
sound effects. 



■ Complete list of the internal VIC 
operating programs and how to use them 
in your own programs. 



■ Auto-start cartridges and how to 
make your own. 



■ Step-by-step guide to the use of the 
development tools. 



Sample programs fully explained. 



DECODER - Turns machine language pro- 
grams (like game cartridges, utility car- 
tridges or even the VIC'S own operating 
programs] into an English-like language 
(Assembly) you can understand. Produces 
listings to screen, printer and cassette. 
Programs produced can be improved, 
customized or studied to see how they 
were written. 

EDITOR - Used to create or modify 
assembly language programs, accepts the 
output from the decoder as input. 
Enables you to make, save and update 
Assembly language programs. 

ASSEMBLER - Converts Assembly 
language back into machine language. 
Lets you use labels and complex address 
expressions in your programs. Saves the 
machine language output on tape. 
Described by Jim Butterfield of COMPUTE 
magazine as "a remarkable feat". Given 
a four-star review by Gregory Yob of 
Creative Computing. Called "elegant" by 
Jim Strasma of Midnite Software 
Gazette/The Paper. 

LOADER - Loads the programs created 
and saved with the other tools. Also lets 
you save machine language programs 
onto tape so they may be loadable with 
usual "LOAD" command. 

MOrJITOf? - Lets you single-step through 
your program one instruction at a time, 
displaying all the registers and status 
bits. Memory display and modify made 
easy. Bypass any instruction with ease. 



ALL FOR $49«95 plus $a.eo postaoi and handlin» 

Standard version runs on any system with Datasette (5K and up) 

Add »5.00 for disk vsrtton, $5.00 for extended features (minimum BK) 
Send check, M.O., VISA/MC ($2.00 S.C.) or specify C.O.D. (add $3.00) to: 



%^ 






P.O. Box 207, Cannon Falls, MN 55009 
507-263-4821 

VIC-20 Is a registered TM of 
Commodore Business Machines Inc. 



Instant 
Commodore 64 Art 



Bob Urso 



Both of thct^c CoiiiDiodorc 64 i^mpltic:; piviiranis - one 
random, the other user-controlled - create inipresshv, 
handsome designs. 



Anyone seeing your 64 while vou'ro running one 
of these two programs might think that vou've 
just looted the Museum of Modern Art. Each pro- 
gram lets you create colorful and expressive 
graphics on your Commodore 64. 

Program 1 is a totally random graphics 
routine. Color, direction, and symbol selection 
are done in lines 30-89. POKEing in the symbol 
and updating its position for the next cycle are 
handled bv line 90. Lines 95 and 96 limit the design 
to the screen area. 

The time (line 11) is set at 1000 to clear the 
screen after it fills up a bit. You can increase T to 
let your design become more complicated; or you 
can eliminate lines 11 and 99-120, and the graphics 
will fill vour screen until the next power outage. 

The second program is called "Sketch-0"; it 
lets you do the designing. You can change the 
colors by pressing the color keys without having 
to press CONTROL. The symbol select keys are 
grouped to the left so that they do not interfere 
with vour direction selection keys. 

You can move in eight directions, allowing 
for diagonal, as well as horizontal and vertical, 
lines. Once vou press a direction key, the design 
will continue to print in that direction until it 
reaches the edge of the screen, or until you press 
any of the other kevs to stop it. 

It's doubtful that you'll ever make a 
Rembrandt jealous, but you should be more than 
rewarded for the short time it takes to type these 
programs. 

Program 1: Random Graphics Routine 

10 REM RANDOM DOODLE 

11 T=1000 

15 PRINT" [clear! " 

17 POKE53280,0:POKE53281,0 

20 P=1024+INT(RND{l)*999)+l:G=P+54272 

ISO COMPtTTf ! Ma, 1983 



30 Z=INT{5*RND{1))+1 

40 IFZ=1THENS=81 

41 IFZ=2THENS=64 

42 IFZ=3THENS=84 

43 IPZ=4THENS=102 

44 IFZ=5THENS=160 

45 K=INT(a*RND(l) )+l 

50 IFK=1THENC=9 

51 IFK=2THENC=1 
5 2 IFK=3THENG=2 
5 3 IPK=4THENC=3 

54 IFK=5THENC=4 

55 IFK=6THENC=5 

56 IFK=7THENC=6 
5 7 IFK=8THENG=7 

80 D=INT(8*RND(1) )+l 

81 IFD=lTHENR=-39 

82 IFD=2THENR=-40 9 

83 IFD=3THENR=-41 

84 IFD=4THENR=-1 

85 IFD=5THENR=1 
36 IFD=6THENR=39 
87 IFD=7THENR=40 
BB IFD=8THENR=41 

89 M=INT(40*RND(1) )+l 

90 F0RZ=1T0M: POKEP , S : POKEG , C ; P=P+R 

95 IFP<=1024THENP=P-R 

96 IFP>=2023 THEN P=P-R 

97 G=P+54272 

99 T=T-1 

100 IFT=0THENGOTO10 
110 PRINT"TIME"?T 
120 PRINT" {03 UpI " 
1101 NEXTZ 

1110 GOTO30 



Program 2: sketcn-o 

10 REM SKETCH-0 

20 P=1524:S=160;C=1 

90 POKE53280,0:POKE53281,0 

95 GOTO1000 

99 PRINT" {clear} " 

100 G=P+54272 

200 POKE P,S : POKEG, C 

300 GET G5: IFA5<>G5ANDG$<> ""THENA5=G$ 

310 IFA5="I"THENP=P-40 

320 IFA$="U"THENP=P-41 

3 30 IFA5="0"THENP=P-39 

340 IFAS="J"THENP=P-1 



Four smart ways 

to make your Atari 400/800, 

TRS-80 COLOR,VIC-20 and Commodore 64 

much more inteHigent. 




Tfie Cotor Accountmt pays 
for itself. This complete per- 
sonal financial package is 
designed to make your money 
easier to manage. Included are: 

I Checkbook Maintenance 

2. Chart of Accounts 

3. Check Search 

4. Income/Expense Statement 

5. Net Worth Statement 

6. Color Graph Design Package 

7. Home Budget Analysis 

ft Color Payments Calendar 
9. Mailing List 
10. Decision Maker 

This unique menu-driven pack- 
age requires less than one hour 
data input per month. The Color 
Accountant has over 60 pages 
of documentation inciuding 
examples and step-by-step 
instructions. TRS-80 COLOR 
requires Ext. Basic and 16K for 
cassette, 32K for diskette; Atari 
400/800 requires 24K for cas- 
sette. 32K for diskette; VIC-20 
requires 16K Expander. Now 
available for Commodore 64. 

$74.% cassette 
$79^ diskette 



The Tax Handler makes 
April 15tli just another day. 

This is the perfect complement 
to our Color Accountant. The Tax 
Handler will help prepare your 
tax returns and probably save 
you money. Included are: 

/. Form 1040 (Long Form)— filing 
status, exemptions, income, 
income adjustments, com- 
putation of tax, tax credits 
and payments or balance/ 
refund due. 

2. Schedule A (Itemized Deduc- 
tionsl—medical and dental 
deductions, taxes, interest 
expenses, contributions, 
casualty/theft losses, miscel- 
laneous deductions and 
summary. 

3. Schedule G (Income Averag- 
ing)— base period income and 
adjustments, computation of 
averageable income and 
computation of tax. 

Additional schedules or altera- 
tions to the tax codes wilt be 
available separately in our 
monthly magnetic magazines. 
Atari 400/800 requires 24K for 
cassette, 32K for diskette. VIC-20 
requires 16K Expander. Now 
available for Commodore 64. 

$34S5 cassette; 
S39J5 diskette 



You'n love your computer 
with The Magnetic Maga- 
zine. Our magnetic magazines 
will entertain, inform, educate, 
challenge and delight you. Each 
issue contains 4 to 7 ready-lo- 
use quality programs, all fully 
listable. Every issue includes a 
newsletter containing instruc- 
tions, tips on programming 
techniques and a line-by-line 
examination of (he feature 
program. And starting with issue 
number 8, the first in a series of 
tutorials on machine language 
programming, Database I with a 
new application every following 
issue and a new utility in our 
Utility-of-The-Month section. And 
word processing is coming soon! 

A full year's subscription 
consists of 10 issues— over 50 
programs a year at a mere 
fraction of their cost. Available 
forTRS-80 COLOR Ext. Basic, 
Atari 400/800: all require 16K. 
Back issues available. 

One year subscription: 

$50.00 cassette; 

$75.00 diskette 

Half year subscriptmn: 

$30.00 cassette; 

S45.00 diskette 

Sample issue: 

$10.00 cassette; 

$f5.{M) diskette 

VIK VIDEO issue 1 available 

for VIC-20: $12.95 cassette 



The Learning Center 
teaches and enlightens 
cMWren. Our exceptional 
educational programs are class- 
room designed and tested. TheSe 
unique packages have been 
invented to introduce 3 to 9 year 
olds to the ease of computer 
learning. Through the use of 
basic concepts such as colors, 
shapes, numt»rs and letters, 
children understand counting, 
math and language skills. Each 
program is designed to develop 
a specific skill, rewarding each 
correct answer with music and a 
happy face. Most are compatible 
with our new Edumate Light 
Pen $34.95. 

Available for Atari 400/800, 
VIC-20 and Commodore 64; all 
require 8K for cassette, 16K for 
diskette. Also available for 
Timex /Sinclair 1000 and Ti-99. 

Ptease ask about programs 
available and their prices 
for Pre-School, Kindergar- 
ten and Grades 1 & Z 
Prices range from S8.S5 
for a sin^ cassette to 
S79.95 for a ccmipiete set 
on diskette. 



Order novk'! See your local dealer or order direct. New catalog S2.00. Visa and MasterCard accepted— 

please add S2.00 for postage and handling. 
Call toll free! 

1-800-334-SOFT 

BKAXER INQUIRTES INVITED 

prograimner^E^jMi^i^ 

^" ^^ a division of FUTUBE HOUSE — dept. c 

p.o, box 3470, cliapel hill, north Carolina 27514, 919-967-0861 




350 IFA5="K"THENP=P+1 

360 IFA$="N"THENP=P+39 

365 IFA5="M"THENP=P+40 

370 IFA5=", "THENP=P+41 

380 IFA$="1"THENC=0 

390 IFA5="2"THENC=1 

400 IFA9="3"THENC=2 

410 IFA?="4"THENC=3 

420 IFA$="5"THENC=4 

430 IFA$="6"THENC=5 

440 IFA5="7"THENC=6 

450 IFA5="8"THENC=7 

460 IFA$="Q"THENS=81 

470 IFA$="A"THENS=64 

480 IFA$="Z"THENS=66 

490 IFA?="W"THENS=102 

500 IFA5="S"THENS=160 

510 FORZ=1024TO1984STEP40; 

530 IFP<1024THENP=P+40 

540 IFP>2023THENP=P-40 

5 50 GOTO 100 

1000 PRIMT" {clear} ": PRINT" {02 DOWN] DOO 
DLE": PRINT" {down! " 

1010 print"here are the symbols you can PRI 

NT" 

PRESS 
PRESS 
PRESS 
PRESS 
PRESS 



:IFP=ZTHENP=P+1 



1020 
1021 
1022 

1023 
1024 
1030 



FOR 
FOR 
FOR 
FOR 



Q" 
C" 
B" 
&" 



PRINT 

PRINT" 

PRIMT" 

PRIMT" 

PRINT" 

PRINT" [GRNITO change COLORS PRESS 1 TH 
RU 8" 
1040 PRINT"F0R THE COLOR INDICATED ON THE K 
EY": PRINT" [down! " 



FOR TrEV} {off}" 



1070 PRINT"TO MOVE YOUR SYMBOL PRESS" 

1080 PRINT" U I O" 

1090 PRINT" M t N" 

1100 PRINT" J<- Q ;@K" 

1110 PRINT" N B M" 

1120 PRINT" N M ," 

1130 PRINT" {PUR}T0 stop SYMBOL PRESS ANY CO 

LOR KEY" 
1150 PRINT"FINISHED WITH INSTRUCTIONS? PRES 

S Y" 
1160 INPUTR5:IF R$="Y" GOTO 99 © 



VIC 20/PET/CBM OWNERS 

HOmDTOAD ~ Hop your load across 5 lanes oi traffic, avoid deadly 
snakes, and dodge Ihe dreaded toad-eaters. Cioss a raging rivei lull o1 logs, 
lurtles. aliigaigrs. and park your load in Ihe safely ol a harbor Each lime you 
park 5 toads^ you enter a touglier level where Ihe action is tasle? and tfie load- 
eaters are more numerous ROADTOAD »s wrillen in machine language and 
uses high resolution graphics. The sound eflecls arc excellent and you can use 
a joystick o: the keyboard lo control your toad. 

CASS/5K/VIC 20 (Includes Shipping/Handling) $1 9.95 

[CALIF RES ADD B% SALES TAX) 

CHIdVClM CrrASC ~ Help your hapless hen avoid hungry chicken 
Hawks, sneaky coyotes, and fiendish ^ompys. If your chicken gets into trouble, 
■hyper-hen" lo a new spot on Ihe maze. If your chicken travels the entiie ma^e, 
you advance to the next level where the action is fastef and the predators more 
numerous. Hires graphics, great sounds, and machine language help make 
CHICKEN GHAS6 a hilarious lun-lilJed game for the whole family. 

CASS/5K/VIC-20 {Includes Shipping^Handling) $19.95 

(CALIF RES ADD 6% SALES TAX) 

Write For NIBBLES & BITS, IMC. Wnte For 

f^REE p,a^ BOX saaa f^^EE 

Catalog orcutt, ca 33^55 Catalog 



Write For FREE Cataloa 



NEW 



Write For FREE Catolos 



VIC SOFTWARE CBM 64 S 



Great VIC Software 



COMMODORE 64 SOFTWARE 



PARATROOPER a High Resolution game thai doesn'l let you make any 
I mistakes. You are in your command. Helicopters fill the sky, (and we mean fill 
I the sky!), dropping paratroopers. Your mission is to keep 3 paratroopers from 
I hitting Ihe ground on either side of your gun. But that's just the beginning. You 
I score by hitting the helicopters or the paratroopers, but if you miss a shot it 
[subtracts from your score. Therefore, you must make every shot count lo 
I make a high score! IT HAS FOUR FAST ACTION LEVELS TO CHALLENGE 
(THE BEST PLAYER. The High Resolution graphics helicoptors are fantastic. 
I They look exactly like helicopters! The paratroopers are super realistic. Their 
I chutes open and then they drift doiun to earth. If this weren't enough the 
I sounds are fantastic. There are helicopter blades whirring and you can hear the 
1 howitzer pumping shells. This game really show of! the sound and graphic 
I capabilities ol your VIC. PARATROOPER IS OUR HI SELLING ARCADE 
IgAME, youVe got to see this game to believe it. $19,95 

SPACE PAKCan you survive? 3 space games withthesightsand sounds of 
Ian arcade. The excitement builds as the action is unending. Blast away at 
I everything in sight. The alien attacks will stop at nothing to destroy you. 
I Prepare for battle, there is no escape, only you can help. Can you survive? Hi- 
Ifies, color, graphics and sound. Joystick or kevboard. 3 Games — Rocket 
I Race, FenceATron and Raiders. $19.95 

COSMIC CBUZER Hot action and 3 challenging scenarios. Move your 
1 cruzer mio l he tunnel ■ lire missiles and drop bombs. Hit the fuel dumps lo get 
I more luel. Move as quick as you dare lo hit the surface-to-air missiles, if you are 
I good enough you will make it to the asleroidz field and then try to destroy the 
I base. No one has destroyed the base yet. Will you be the first- S19.95 

VIC ALL STARS We look the best selling VIC programs and put them in a 
I package to save you i35. If purchased seperately it would cost you $85. You gel 
I Parairooper, Target Command, Head On, Cattle Bound-up, Snake 
I Out, Trapper. Double Snake Out and Artillerv. All eight games for $49.95. 
I Hurry because at this price they won'l last long. Limited quantity. 8 
Games $4995 



Let the COMPUTERMAT 
turn your 64 into a home arcade! 

COLOR . GRAPHICS . SOUND 

ON CASSETTE 

(Disk Versions Available - Add $5."') 
ARCADE PAK - $24," EDUCATION PAK - $24.« I 
3 Programs 4 Prosrams 

Heatd On Geography Match 

Alien Invasion Math Adventure 

Targel Command Ruler & Micro 



TREASURE PAK - $14." 
3 Programs 

Adventure 
Caves of Silver 
Shuttle Voyage 



GAME PAK - $14.'^ 
3 Programs 

Dragon Chase 
Deflect 
Flip It 



Joystick and Keyboard versions included. 



COMPUTERMAT 

Box 1664 • Dept, C • Lake Havasu City, Az. 86403 
(602) 855-3357 



152 COMPUTE! MoyTJeS 




Qcommodore 

NEW COMMODORE PRODUCTS 

CBM P500 S 695 

CBM B500 695 

CBM B700 2990 

CBM 1520 Ploffer 259 

CBM 1701 Color Monitor 279 

SOFTWARE FOR CBM 04 Z. 

Word Processing (WordPro 3*) S 69 

Wofd-Poc (tape) 60 

Ttie Assistant Series 

Writer's Assistant (easy and flexible) ... 99 

FilBAssistont(datalxBewitti merge). . . 99 

Spreodsheei Assistonf 99 

Pecs. Finance Assist.(grecit reports) ... 45 

Busicalc (Spreodstieet) 62 

Coco II (build your own games easily). .. 45 

Home Accounting Pacltage 39 

General Ledger, A/H A/P 

(with check writing) ea.l 75 

CBM EosyRnonce 50 

CBM EosySaipt 80 

CBM EosyFile 80 

Data Manager 70 

Stock( investment onolysis) 80 

Pet Emulator (emulates 4.0 basic) .... 30 
Sprite-Mogic (use joystick 

to design sprites) 19 

Assembler Pockage (cossette or disk, 
compiled, includes editor, loader, 

disassembler) 39 

Spacebell 20 

Retroball 34 

INTERFACES & ACCESSORIES 

80 Column Exponder. $159 

VIC 1600 Modem 95 

VIC 1650 (auto answer, auto dial) 150 

VIC 1525 Graphic Printer 329 

VIC 1 530 Dotosette Recorder 65 

VIC 1541 Disk Drive 329 

VIC Switch (connect 8 64's or Vies 

to printer, dd) 1 49 

IEEE Interlace (64) 85 

PET-IEEE cable 33 

IEEE-IEEE cable (2m) 39 

Parallel Intertace (Epson, Okidota, 

IDS, NEC) 80 

RS-232 Printer Interface (Okidata 

Diablo, etc.) 60 

Programmers Reference Guide 18 

Verbatim Diskettes (1 per box) 26 

Victree (Programmers Utility) 75 

VIC PRODUCTS & ACCESSORIES 

8 K RAM Memory Expansion Cartridge... S 40 

16KRAM 70 

24KRAM 105 



VIC IEEE Intenoce 75 

VIC 3 Slot Expander. 27 

VIC 6 Slot Expander 70 

RS-232 Printer Interlace 65 

Cassette Intertace 27 

Home Finance Package (6 tapes) 47 

Gort (64 also) 30 

Omego Roce 30 

Arcade Joystick - Heavy duty w/2 firing 

buttons! Great tor the VIC or 64 ... . 25 

MONITORS - GREAT 
RESOLUTION (64 OR VIC| 

Amdek Color 1 S 319 

Amdek II or III call 

Panosonic CT160 295 

Comrex 6500 - 13" Color 299 

Transtar 20 (HIgfi Resolution 

Green Phosptior) 1 29 

Video/Audio Cable 15 

PRINTERS - LETTER QUALITY 

CBM 8300, 40 cps S1450 

Dioblo 620, 25 cps 995 

ComRiter, 1 7 cps 899 

Transtar 130, 16 cps (auto load, 

wp featuresi) 769 

NEC 7700 series 2350 

NEC 3500 series 1600 

PRINTERS - DOT MATRIX 

CBM 8023, 150 cps/graphics 589 

Epson FX Printer, 160 cps 529 

Okidata 82A. 1 20 cps (serial 

and parallel) 429 

NEC 8023A (parallel) 469 

Okidato 92 555 

Star Gemini, 10 429 

Star Gemini, 15 529 

COMMODORE BUSINESS 
SERIES 

SuperPet (5 languages, 

2 processors) SI 409 

CBM 8032 Computer, 80 Column ... 1 029 

CBM Memory Expansion, 64 K 359 

CBM 8050, 1 mg. Dual Drive 1259 

CBM 8250, 2 mg. Dual Drive 1500 

CBM D9060, 5 mg. Hard Disk 2240 

CBM D9090, 7.5 mg Hard Disk .... 2600 
CBM 2031, 170K Single Drive (New) 489 
DC Hayes Smart Modem 220 

BUSINESS SOFTWARE 

WordPro 4* or 5* S 309 

Administrator 489 

VisiCatc (expanded) 199 

The Manager (database) 199 

BPI A/R, 6/U Job Cost, Inventory, 
Payroll ea.325 



MasterCard, Visa, 
Money Order, Bank Check 

COD (add $5) accepted. 

Add 3% surcharge for credit cords. 

In stock items shipped within 48 hours, 

F.O.B, Dallas, TexcB 

All products shipped witti manufacturer's 

wan'onty. 

Prices are subject to change vwthout notice. 

TO ORDER 

CALL TOLL FREE 

aOO-527-4893 

800-442-1048 

(Within Texas) 

Business Hours 
Mon.- Ffi, 6to6, Sot. 10-2 

Write tor free catalog. 





SJB DISTRIBUTORS INC. 

10520 Plono Rood, Suite 206 

Dollas, Texas 75238 

(214) 343-1328 



Graphics On 
The Sinclair/Timex 



DereK Stubbs 



I 



This short ^iiidc to the ;^mphics capabilities of Sinclair/ 
Timex computers dcnioustratcs pattern creation, circles, 
conic sections, and bar ;^raphs. To show how graphics 
can be used in games, tliere is "Asterbclt," lohich will 
test your abilities as a spaceship pilot. 



One great advantage ot' a computer over most 
calculators is that a computer can handle letters 
as well as numbers and can give a graphic output. 
You possibly bought your ZX/TS hoping to pro- 
duce some fabulous graphics. If you did, you 
were soon disappointed by two things: the manual 
says little about graphics, and computer magazines 
often contain programs with graphics commands 
that vou cannot use, such as HPLOT, SET, RESET, 
DRAW, and XDRAW. 

Don't bo worried. The ZX/TS has lots of 
graphics capability. My favorite is the unique 
graphic symbol facility. It can print a million- 
million different patterns. They each remind you 
of an Indian blanket, or an urban landscape, or 
the tiles in an oriental design. Sometimes a striking 
3-D pattern emerges. 

Program 1 generates a random string of 
graphic symbols (lines 10-40) and then prints and 
reprints them until the screen is full (lines 50-1 10). 
After a pause of four seconds (line 200), a new 
pattern is generated. Experiment by reducing the 
string-length of 1 1 in lines 10, 20, and 60. 

Figures And Graphs 

To many people, graphics means geometric fig- 
ures. A simple program (Program 2A) will draw a 
circle of radius R and center X,Y. The speed of 
plotting and the interval between points depend 
on 1. You should experiment with values of R, X, 
Y, and 1 before going on to a more fascinating 
plot (Program 2B). Start with R = X = Y = 13 and 
I = .2. 

Now vou will see how Program 2B - which I 
call "Figures"- will print all kinds of conic sections 
(circles, ellipses, parabolas, and hyperbolas) and 
all kinds of lissajous figures (weaves, pretzels, 
and figures of eight). The interesting thing is that 

15J COMPUTI! Mavwea I 



Program 2B is only one line longer than Program 
2A - yet it is far more versatile. 

A third graphics feature that has many uses 
is a simple graphic plot of data. Program 3, 
"Graphs," will plot any mathematical function 
that vou input, as AS. It always fits on the screen 
because you define the limits, XMIN and XMAX. 

If you need to plot a bar graph. Program 4 
will be adequate. Typically, such a graph is used 
to plot "time-data" such as "sales per month" or 
"bushels of corn per year." Also you might use it 
for "frequency" data like "how manv people 
weighing 50-100 lbs., 100-150 lbs. and so on." 
Program 4 allows you to plot and label the axes 
and bars so that vou can understand how to mix 
the PRINT and PLOT commands to get a good 
screen. Instead of printing 1 in line 170, you can 
print another label such as the time or interval 
concerned; call it C$ and INPUT it at line 135. 

The ultimate graphics program is the moving 
graphics game. You'll have fun with Asterbelt 
{Program 5). You're the captain of a spaceship 
denoted by an asterisk at coordinates X, Y. You 
can drive it to port or starboard by pressing P or 
S. A thousand asteroids appear as blobs (sub- 
routine 1000). If you collide with an asteroid, a 
flash occurs as you destroy it with your hyperspace 
shields; and you move on through the exploded 
remnants (subroutine 2000). 

You can make it harder by having only two 
squares between you and the next asteroid to 
appear. You can adapt subroutine 2000 to keep a 
count of vour collisions. Warning: in the non-play 
mode, the screen clears very slowly. 

Program 1: Random symbols 

1 REM ***A MILLION-MILLION PATTERNS 

10 DIM Gdl) 

20 FOR 1=1 TO 11 

30 LET g(I)=128+INT(RND*12) 

40 NEXT I 

50 LET C=0 

60 FOR 1=1 TO 11 

70 PRINT CHR? G(I) 

80 NEXT I 

90 LET C=C+1 



100 IF C>60 THEN GOTO 200 
110 GOTO 60 
200 PAUSE 240 
210 CLS 

2 20 GOTO 20 

Program 2A: circle 

1 REM***CIRCLE*** 
10 INPUT R 
20 INPUT X 

3 INPUT Y 
40 INPUT I 
5 LET T=0 

60 PLOT X+R*COST,Y+R*SINT 
70 LET T=T+1 
80 IF T>2*PI THEN STOP 
90 GOTO 60 

Program 2B: Figures 



1 REM 



*** 



FIGURES 



*** 



10 DIM A(4) 

20 FOR 1=1 TO 4 

30 LET A(i)=25*RND 

40 NEXT I 

50 FOR N=0 TO 100 

60 PLOT A(1)-A(1)*COS(n/a(2) ),A(3)-A(3) 

*sin(n/a(4)) 

7 NEXT N 
80 PAUSE 240 
90 CLS 
100 GOTO 10 



Program 3: Graphs 



1 REM***GRAPHS*** 

10 INPUT XMIN 

20 INPUT XMAX 

30 INPUT A? 

40 LET X=XMIN 

50 LET YMIN=VAL A? 

60 LET X=XMAX 

7 LET YMAX=VAL A$ 

80 IF YMAX<YMIN THEN GOSUB 5000 

90 LET XL=XMAX - XMIN 

100 LET YL=YMAX - YMIN 

110 GOSUB 1000 

120 GOSUB 2000 

130 STOP 

1000 FOR 1=0 TO 63 

1010 PLOT 1,0 

1020 NEXT I 

1030 FOR 1=0 TO 43 

1040 PLOT 0,1 

1050 NEXT I 

1060 RETURN 

2000 FOR X=XMIN TO XMAX STEP XL/63 

2 010 LET Y=VAL A? 

2020 PLOT (X-XM1N)*63/xL, (y-YMIN)*43/YL 

2030 NEXT X 

2040 RETURN 

5000 LET U=YMIN 

5 010 LET V=YMAX 

5 020 LET YMAX=U 

5030 LET YMIN=V 

5040 RETURN 

Program 4: Bar Graphs 

1 REM***BAR GRAPHS*** 

10 PRINT "NUMBER OF BARS (<=20)?" 



.K 



"HEIGHT OF TALLEST BAR?" 

HMAX 

"LABEL ON X-AXIS?" 

A? 

"LABEL ON Y-AXIS?" 

B$ 



B 



20 INPUT B 

30 PRINT 

40 INPUT 

5 PRINT 

60 INPUT 

70 PRINT 

80 INPUT 

100 CLS 

110 GOSUB 1000 

120 FOR 1=1 TO 

130 INPUT H 

140 FOR J=2 TO 43*h/HMAX 

150 PLOT {I*63/J},J 

160 NEXT J 

170 PRINT AT 21,31*I/B;I 

180 NEXT I 

190 STOP 

1000 FOR 1=0 TO 63 

1010 PLOT 1,2 

1020 NEXT I 

1030 PRINT AT 21,(31-LEN A?);A$ 

1040 FOR 1=2 TO 43 

10 50 PLOT 0,1 

1060 NEXT I 

Program 5: Asterbeit 

1 REM***ASTER-BELT*** 
10 DIM A(1000) 
20 LET X=9 
30 LET Y=6 
40 GOSUB 1000 
50 LET A(1)=J 
60 GOSUB 1000 
7 LET A(2)=J 
80 FOR N=4 TO 1000 
9 PRINT AT X<Y; "*" 
100 IF Y=A(N-3) THEN GOSUB 2000 
110 GOSUB 1000 
120 LET A(N)=J 
130 IF INKEY$="P" 
140 IF INKEY$="S" 
150 NEXT N 

1000 LET J=INT(30*RND) 
1010 PRINT AT 12, J;" " 
1020 SCROLL 
1030 RETURN 
2000 FAST 

2 010 FOR M=l TO 15 
2020 LET R=3*RND 
2030 LET T=2*PI*RND 

2040 PRINT AT X+R*COST , Y+R*SINT; " 
2050 NEXT M 
2060 SLOW 
2070 RETURN 



THEN LET Y=Y-1 
THEN LET Y=y+1 



COMPUTE! IS looking 

for good articles, 

tutorials, and games 

for the Sinclair/Timex, 

Comnnodore 64, and 

Color Computer. 



May 1983 COMPVTE! 155 



MACHINE LANGUAGE 



Jim Butterfield, Associate Editor 



Parti 



NUMERIC OUTPUT 



Outputting strings from machine Inngunge is no 
problem. The programmer takes the characters 
from memory and sends them out. Numbers need 
more work: the binarv values must be changed 
to ASCII characters which must be sent out one at 
a time. 

An adcied complexity is format: numbers 
often need to be carefully formed into a specific 
number of characters, so that they will print neatly 
in columns. Zero suppression is often ciesirable, 
so that a number such as 00204 will print as 204. 
Some of these jobs are fairly straightforward 
mechanical tasks; the hardest part is often the 
math routine which is needed to break up a binary 
number into several digits. 

Single Digits 

Binary values of zero to nine are easy. All we need 
to do is to change them to ASCII before sending 
them out. 

We've mentioned before that ASCII repre- 
sents the character zero, for example, as hexadec- 
imal 30, decimal 48. PRINT CHR$(0) will not print 
a zero character - indeed, it won't print anything 
- so that we must do the job with PRINT CHRS(48). 
So, to print a binary zero, we must change it to 
hex 30, binarv one must he changed to hex 31, 
and so forth, up to binary 9 changing to hex 39. 
Binary 10 is a different matter: we must make two 
digits out of it, one and zero. The easiest way to 
convert a single digit is with an ORA command: 
ORA #S30 will insert the desired high bits. 

When we move on to more complex numbers, 
we'll need to remember that each digit, as we 
generate it, must be converted to ASCII before 
output. 

Let's write a simple program to print several 
single numeric digits. We'll use SFFD2 for PRINT; 
this will work on all PET'CBM machines, VIC, 
and Commodore 64. Our coding goes: 

LDX #S00 (sMi-t.it/.ero) 
LOOP TXA (mnvenuiiiLx-rtoA) 

ORA #S30 (convert to ASCII) 

JSR $FFD2 (print it) 
I NX (go to next number) 

156 COMPUTf! Mov1983 



CPX #$0A (less than ten?) 
BCC LOOP (ves, print it) 
RTS 

The output looks like a large number - the digits 
are printed side by side - but, in fact, it's ten 
indepencient digits. 

As an exercise, let's convert the above pro- 
gram to BASIC POKES and run it. Our BASIC 
equivalent goes: 

100 DATA 162, 0, 138, 9,48 

no DATA 32,210,255, 232, 224,10 

120 DATA 144,245, % 

200 FOR J = 848 TO 861:READ X 

210POKEJ,X:NEXTJ 

300 FOR J = 1 TO 10:SYS 848:NEXT J 

The first three lines give the machine language 
program in decimal. The individual instructions 
have been separated bv spaces to make them more 
visible. Lines 200 and 210 POKE the program into 
the cassette area. Finally, line 300 invokes the 
machine language program ten times; you'll get a 
hundred digits printed. 

Hexadecimal Output 

Hex output, like input, is fairly easy. Hexadecimal 
might be viewed as a compact way of representing 
binary, and since the computer has binary, the 
conversion must be easy. It is. All we need to do 
is grab four bits at a time. Each group of four bits 
is a hex digit value, which can be converted to 
ASCII and then output. For example, a decimal 
value of 223 (hex El) can be converted this way: 
take the high four bits, bniary 1110, and convert 
and print as a hex character. That works out to a 
letter E. Now take the low four bits, binary 0001, 
and do the same, giving us the digit 1. We've 
printed El, the hex value. 

Let's get technical. How do we get the four 
high bits? Bv giving four shift-right instructions. 
The bits obligingly move over to the low order 
side, and zeros are left in the vacated space. Later, 
how do we get the four low bits? By taking the 
original value and performing an AND #$0F, 
which wipes out the high bits. 

When the four-bit group is extracted, how do 





IN 



CP/M DISKS 
DISKETTES 



M 



DYNACOMP 

The Leading Distributor Of 
Microcomputer Software 

PRESENTS 

PERSONAL FINANCE SYSTEM: 

One of the most complete financial management packages available. Keeps track 
of all tax deductible items, bank deposits, monthly charges, cash payments and 
more. 

Personal Finance System automatically deducts check fees, gives complete finan- 
cial summaries for any category on a per item, monthly or yearly basis, prints 
results in detail or summary form, and even plots results on a monthly bar graph. 
Available on diskette/disk only. Price $39. 95 (diskette); $42.45 (disk). 

BRIDGE MASTER' ' 

After years of success with BRIDGE 2.0, we have decided to not simply upgrade 
this popular card program, but to totally rewrite it! the result is BRIDGE 
MASTER, the best overall bridge package available. 

BRIDGE MASTER BIDS according to the Goren point count system. It 
PLAYS following the conventions. It SCORES according to the rules of 
duplicate bridge. BRIDGE MASTER'S features include continuous display of 
the bid and score during play, attractive screen display, score keeping and 
analysis, 1,000,000 different hands, and more! 

BRIDGE MASTER has received rave reviews and an "A" for value (The Book 
of Atari Software 1983). 

Available on diskette only. Requires 48K. 

Price: S29.95 (diskette); $32.45 (disk) 
THESE ARE ONLY TWO OF THE HUNDREDS OF PROGRAMS 
AVAILABLE FROM THE DYNACOMP LIBRARY OF SOFT- 
WARE PROGRAMS: 



Business/Utilities 
Adventure 
Personal Finance 
Games 



Education 
Thought Provokers 
Statistics 
Card Games 



Engineering 

Hardware 

Supplies 

And Much, Much More! 



Besides being the leading distributor of microcomputer software, DYNACOMP 
currently distributes software in over 60 countries. DYNACOMP provides 
FRIENDLY, ACCESSIBLE CUSTOMER SERVICE through our highly 
qualified and knowledgeable staff. WE'RE AS NEAR AS YOUR TELEPHONE. 

DYNACOMP' S prices are highly competitive and we promise prompt processing 
of every order! 

WRITE FOR A FREE, DETAILED CA TALOG 

Daytime 24 Hour 

Toll Free Order Phones: Message and Order Phone: 
(800) 828-6772 (800) 828-6773 (716) 442-8731 



Office Hotline: 

9-5E.S.T. 
(716) 442-8960 



DYNACOMP, INC. 

1427 Monroe Avenue • Rochester, NY 14618 



we change to ASCII? If the foui-bit value is zero 
to nine, we can use the simple ORA #$30 as men- 
tioned before. For the six high values, ten to fifteen 
{A to F), we would need to use arithmetic, usually 
the ADC command. Of course, we could bypass 
the whole question by setting up a table of digits 
and looking up each digit. Most programmers go 
for the arithmetic. 

Multiple bytes are no problem for hex. We 
just convert them starting at the high order end: 
eiach byte generates two hex digits. Let's write a 
program to convert some memory bytes into hex 
and display them. First, a subroutine to convert 
and output a four-bit value in the A register as 
two hex digits: 



HEXDIG CMP #$0A 

BCC SKIP 

ADC #S06 

SKIP ADC #S30 

JMP $FFD2 



(alphalx'tic digit?) 
(no, .skip next part) 
(add,se\t.'n) 
(convert Ui .ASCII) 
(printit) 



There are a couple of curious coding quirks 
above. We need to add seven to the alphabetics: 
why does the coding sav ADC #$06? Because the 
carry bit is set, that's whv. Adding six plus a carry 
makes a total increase of seven. Another oddity: 
the subroutine doesn't return with RTS. Instead, 
it goes to another subroutine; when the other 
subroutine (FFD2) returns, it will return directly 
to the caller. 

Now an outer subroutine. This one breaks a 
bvte in the A register into two four-bit numbers 
and prints the two digits. It uses HEXDIG, above: 

HEXOUT PHA (save the tnte) 

LSR A 

LSR A (extract tour..) 

LSR A (,. high hits) 

LSR A 

JSR HEXDIG (prini hex char) 

PLA (tiring back byte) 

.AND #SOF (extract low four) 

IMP HEXDIG (restore ASCII) 

Again, we save an RTS by doing a JMP direct to a 
subroutine. 

Now we can do the main job: displaying a 
number of memory locations: 

JOB LDX #$00 (counter) 

JLOOP LDA SFFCO,X (getabvle) 

JSR HEXOUT (printit) 

LDA #$20 (space char) 

JSR SFFD2 (printit) 
INX 

CPX #$0A (ten bytes vet?) 

BCC JLOOP (no, doanother) 

LDA #SOD (RETURN char) 

JMP SFFDl (printit) 

We've written the program to display a spe- 
cific range of addresses. You may change it to 
display what: you wish. 

The four LSR instructions may be considered 
the equivalent of dividing by 16. That's what the 
15S cOMruni Movims 



word "hexadecimal" means, of course: hex for six 
and decimal for ten, giving a total of 16. 

Sneaky Hex 

You may have decided that hexadecimal output is 
quite easy. It is, compared t<.) decimal, and that 
gives us an interesting possibility. 

Could we write hex numbers that looked like 
decimal numbers? In other words, could we print 
decimal 22 by somehow converting it to look like 
hex 22, and then printing it? It sounds complex: 
decimal 22 would be written as hex 16, and hex 22 
has a decimal value of 34. Not much in common 
there. But there's a gimmick. 

The 6502 processor has an arithmetic feature 
called "decimal mode." When we invoke it (with 
the SED, Set Decimal, command), decimal arith- 
metic takes place using numbers that look like 
hex. In other words, the decimal value of 22 is 
stored as hex 22. The proper name for this kind of 
number is not hexadecimal, of course. This num- 
bering system is called 'liinary coded decimal." 

We can't go into the inner mysteries of BCD 
at this time, but a few facts can be noted. Decimal 
mode affects only the ADC (add with carr\) ancf 
SBC (subtract) instructions; all other instructions 
still cieal with binary numbers. If you're going to 
play with decimal mode, kill the interrupt for the 
moment; your interrupt routines may not be able 
to cope with "new math." And rctnember to put 
everything back (clear decimal mode, restore the 
interrupt) when you've finished doing the task at 
hand. 

Decimal mode arithmetic is great for things 
like keeping score in video games. The .scores can 
be easily translated and delivered to the screen. 
But decimal mode is not ioo good for sent)us 
mathematics: multiplication, division, square 
roots and such become much harder to handle. 
For most applications, stick with binary. 

We'll be talking about how to convert binary 
numbers hi decimal in the next session. © 




SK- 

MINI-FLOPPY DISKS 

WRITE/PROTECT 

NOTCH 
HUB RINGS 
SOFT SECTORED 



FULLY CERTIFIED 100% DEFECT FREE 

DISKETTES 1 1 Bo» Mm.) 

10-^9 1 7-49/box 

30-99 1 5.99/box 

100-f 14.99/box 

Add S2.00 shipping 

MC/VISA/C.O.D. 

DEALER INQUIRIES INVITED 

COMPUTER CREATIONS, Inc. 
P.O. Box 292467 
Dayton. Ohio 45429 
(513) 335-4260 or 
(513)294-2002 




FAST ENOUGH FOR 




Our- 

alien wortT''' 

hang around ft, 

slow software. f._ 

wants crisp responses and i_ 

really fast processing. -'' 

For the human race too, slow PET ' 
is not good enough. When ws run a pr_ 
whatever it is, we want fast efficient actiartr' ' "' 

PETSPEED, the connpiler recommended by Co_ 
is now available for the 64 and CBM 2. It can make any BAStC ' 
program run many times faster, li even speeds up disk handling. We 
guarantee that PETSPEED is easier to use and generates faster cc"^ 
Than any other BASIC compiler for Commodore Systems. i. 

Using PETSPEED is simple. Just type in the name of the prograSl! 
wait a few minutes and then watch your software run up to 40 times 
faster. 

Petspeed is not simply a compiler, it contains a powerful OPTIMIS- 
ER. While PETSPEED is cornpiling, it breaks your program down 
into tiny fragments and reassembles it removing the unnecessary and 
simplifying the complex. Dazzling graphics. Lightning sorts. With 
PETSPEED anything is possible. 

Also available INTEGER BASIC COMPILER - 150 to 200 times 
the speed of Basic. Integer Basic is for those applications where the 
speed of machine code is required without the inconvenience of 
assembly level programming. Ideal for scientific and educational 
users. Compatible with Petspeed. 

PETSPEED (Commodore 64) $150 

PETSPEED (8000 or 4000 series) S150 

INTEGER BASIC (8000 or 4000 series) $150 

SPECIAL OFFER: Petspeed PLUS Integer Basic $250 




(415) 964-8201 

SMALL SYSTEMS ENGINEERING 

!056 Elweil Court • Piilo Ako. CA 94303 








TELECOMMUNICATIONS on theVIC and '641 

"A versatile and exceedingly well-done package." David Malmberg, MICRO 

"Simply the best & nicest VIC terminal software I have seen." 

Greg Yob, CREATIVE COMPUTING 

We created quite a f luny and earned rave reviews with 

Terminal-40, the unique software thai transforms the . ... 

vie screen into a 40<olumn smooth-scrolling display. ■'*~'--" 

And with features like a Receive Buffer and VIC MODEM 

printer dump, TerminaMO sets a new standard for per- 

sonal modem communications with networ1<s such as 

CompuServe and Source. Our '64 lerm'mal does the -i^ 

same quality job for the '64. j 

And now there's even MORE! ! ! SuperTerm-40 and 
SuperTerm '64 support text storage to disk or tape 
and program UPLOAD^DOWNLOAD. Superlerms, 
used with our Smart ASCII, also support popular i 
parallel printers. -*iis^ 

Choose the one right for you. Call or write 
today for the "best", then ... —— 



For the VIC: 

Termlnal-40 ireq sk expj S29.95 
SuperTerm-40 (req ieK exit) Call 
For the Commodore 64: 

'64 Terminal $29,95 

SuperTerm '64 Call 

{On cassette. Requires fnodem: VIC printer optional) 

MIDWEST 



REACH OUT 

and BYTE SOMEONE! 




MICRO associates 



PO BOX 6148, KANSAS CITY, MO 64110 



ORDER D ESK: (9 am • 4 pm, orders only!) 

(816)254-9600 

Technical support (816| 921-6502 

Send for a free brochure describirtg 
our other quality products. 



n/IAIL ORDER: Add $1.25 shipping and handling 
($3.50 (or C.O.D.); V!SA/Mastercard add 3% (card* 
and exp. date). Missouri residents include 4.6% 
sales tax. Foreign orders payable U.S.$, U.S. Bank 
ONLY; add $5 shp/hndlg. Dealer inquiries Invited. 



24K Golden RAM 



Special 
ROM Mode 

Featim 



Expansion Chassis 

& 4 Jl #%2A ^^^^^ directly into your 

1 T* 6# VIC'ZO Personal Computer 

- 24.576 Bytes of Memory — Programmer's Dream 

. Four Chassis Slots for VIC Game/Program Cartridges 

• Switches, Fuse. Reset for Slot Control 

. Ttiree Switch-Selectable 8K RAM Banks 

' ■ ' ' ' ■ V, . Start Addresses 2000. 4000. 6000. AOOO HEX 

>^ - Special ROM Switches Inhibit Self-Destruct Code, if Present 

' ■ Factory Tested — One Year Warranty 

■ Cashier's Checks and Money Orders Accpeted 

. Add 3% Shipping and Handlirvg; in Califomia Add 6% SalesTax 

. . Dealer Inquiries Invited 

. School/ Group/ Club Discounts Availat>le 

VOICE WORLD 

13055 Via EspeHa . Del Mar, Califomia 9Z014 
(61 9> 481-7390 

.-••" "WE MAKE COMPUTERS TAUT 



THE COMPLETE 



VIC 



VIC. VIC-20 4 64 are trademarks of 
Commodore Business Machines 

AT LAST: A Definitive Resource 
Directory for the VIC-20' Computer. 
Find out what's available for the 
VIC-20*, where to find it, what it 
costs, and what other VIC owners 
think of it!! 

THE COMPLETE VIC* 



INCLUDES: 

■ Descriptive listing ot over SOO products 
and programs. 

• Independent program^product re/iews. 

■ Cross- relerenced by name and manulacturer. 

• Unbound and pre-punched for slancJard 
3-ring binder 

• Readej" forum lor reviews/comrnents/etc. 

• Twuice yearly updates. 

• Names, addresses, and phone numbers of 
VIC'20' vendors and mail order houses carrymg 
VIC-20" products. 

In the Spring Updaie: 

Bibtiography ol VIC-20' magazine afhcles and 

booK and a lunclional cross-relerer^ce 

COMING SOON: THE COMPLETE 64* 

The Complete VIC ss available lor 513.50 + 31,50 
P^H. An attractive vmyl-covered, 3 nng binder is 
available for S5.00, (Postpaid with The Complete 
VIC\ NOT sold separately.) CA residents add 6% 
saies tax. Send check or money order to: 

MACRO DYNAMICS 

8950 Villa La Jolla Dr., Ste. 1200 

LaJolla, CA 92037 ALLOW4weEKs 

FOR DELIVERY 



160 CO«P0Ti! May 1983 



PET/CBM POP 



Michoel W Schoffer 



You cn)i avoid stackiii^'^ up too many siihroiitinc^ In/ 
iisiii;^ POP to anici'l a GOSLIB (coDDiiaiui that semis 
coittmi to a siibroiitinL' at a given Hue nitniber and tlicn 
RETURNS to the statement after GOSLIB). A pro- 
^:iraun)iin\i tool for all PET/CBM computers. 



Atari BASIC cind the Microsoft i^ASiC Lised on 
the Apple 11 provide a rather useful command 
called POP. The POP command removes the last 
GOSUB from the slack, so that a RETURN will 
return the program to the second-to-last GOSUB. 
For example, in this program: 

10 GOSUB100 

20 PRINT "CONTROL RETURNS HERE." 

3 STOP 

100 GOSUB200 

110 PRINT"NOT HERE." 

120 STOP 

200 POP 

210 PRINT " GOING " 

2 20 RETURN 

the RETURN on line 220 returns the program to 
line 20 (not 1 10). This utility can be very useful, 
but it is not available in Commc>dore BASIC. Well, 
it wasn't. 

Here is a machine language utility that 
executes a POP on all PET/CBM models. The code 
is position independent -in other words, it can 
be moved to any convenient spot in memorv with- 
out any changes. I prefer to locate the code at the 
top of memory. A POKE 53,127:POKE 52,0:CLR 
(for 32K systems) will prevent BASIC from using 
this space. 

Program 1 provides the machine language 
routine in the form of a BASIC loader. The pro- 
gram will load and protect the POP routine, and 
then indicate the proper SYS location to call the 
routine. Programs 2 and 3 provide changes for 
older ROMs. 

A GOSUB in BASIC pushes five bytes onto 
the system stack. These bytes tell BASIC where to 
start running when the RETURN statement is 
executed. These five bytes are the low and high 
bytes of the CHRGET pointer (locations 119 and 
120 for newer ROMs, 221 and 222 for Original 
ROMs) and the current line number (locations 54 
and 55 for newer ROMs, 136 and 137 for Original 
ROMs), and the token for GOSUB (141). To per- 
form a POP, all we do is remove these five bytes 



from the stack. The routine uses the same sub- 
routine that BASIC uses (JSR $B322 for BASIC 
4.0, JSR SC2AA for Upgrade BASIC, JSR $C2AC 
for Original BASIC) to search the stack for the 
GOSUB token. The subroutine loads the ac- 
cumulator with the token found at the top of the 
stack. We compare it to 141 to see if we have lo- 
cated a GOSUB. If a GOSUB is not found, then an 
error is returned. The error message sent is "? with- 
out gosub error in xxxx". Notice that the standard 
BASIC error routine is used, so program and 
variable integrity are assured. The live PLAs simu- 
late the action of a RETURN without really doing 
anything. 

This utility is especially useful in highly 
"modular" programs. An error handling sub- 
routine can easily remove "pending" COSUBs 
from the stack to prevent them from building up 
(and resulting in an "?out of memory error"). 

To use this POP in the preceding program, 
change the POP in line 200 to a SYS 32512, or 
whatever SYS location the loader indicates should 
be used. The program does not change in any 
other way. 

Program 1: basic 4.o version 

10 POKE53,PEEK(53)-l tPOKE 52,0:CLR 

20 SADR=PEEK(52)+PEEK{53)*256 

3 FOR ADDR=SADR TO SADR+22 

40 READ DTTA:POKE ADDR, DTTAiNEXT ADDR 

50 PRINT"USE SYS ";SADR 

60 END 

70 DATA 169,255,133,71,32,34,179,201 

80 DATA 141,240,5,162,29,76,207,179 

90 DATA 154,104,104,104,104,104,96 

PrOQrom 2; Make These Changes For 
Upgrade BASIC 

70 DATA 169,255,133,71,32,170,194,201 
80 DATA 141,240,5,162,29,76,87,195 

Program 3: Make These Changes For 
Original BASIC 

70 DATA 169,255,133,71,32,172,194,201 

80 DATA 141,240,5,162,29,76,89,195 © 



COMPUTE! 

The Resource 



May 1983 COMPUTE! 161 



Bootmaker 

For VIC, PET, And 64 



M, G, Ryschkewitsch 



Here's a good, short boot routine that's going to simplify 
your programming efforts. This general technique can 
be applied to many different boots (programs that load 
other programs). A timesavcr far any Conmwdorc 
computer. 



How many times have you turned on your com- 
puter and wished that you didn't have to go 
through the tedium of loading utility programs or 
remembering where to PEEK, POKE, or SYS to 
link them in? 

I'd like to describe a booting system which 
uses the "dynamic keyboard" technique and a 
modified version of the "Universal Wedge." 

This particular boot can be used to simplify 
setting up your computer for the graphing utility 
which follows, but the general technique is simple 
and useful for a wide variety of boots. A similar 
technique can be used, for example, to ask a user 
questions in order to initialize a printer prior to 
loading a word processing program. If your PET 
has BASIC 4.0 and you put your boot on a diskette 
as the first program, the process is particularly 
simple. Press SHIFT/RUN, and the hard part is 
done by the computer. 

The Dynamic Keyboard Technique 

The dynamic keyboard technique involves fooling 
the computer into thinking the user is entering 
data from the keyboard. This is particularly easy 
with the PET. It involves printing messages on 
the screen and POKEing two locations in PET 
memory, the keyboard buffer at decimal addresses 
623-632 and location 158, which normally contains 
the current number of characters in the buffer. 

Your BASIC program must print all the entries 
you'd normally make on the screen in the proper 
locations (to leave room for the normal PET mes- 
sages such as LOADING, etc.) and then return 
the cursor to the home position. If you then POKE 
the number of carriage returns (character 13) that 

162 COMPOTE MCIV1983 



you'd normally enter beginning with location 623 
and that number also into location 158, here's 
what happens. 

After the PET finishes executing your boot, it 
will wake up with the cursor in the home position 
and believe you've pushed the RETURN key a 
number of times. The first RETURN will cause it 
to execute the line that the cursor is on, and, after 
printing any appropriate messages, it will execute 
as many subsequent lines as there are RETURNS 
in the buffer. The only catch is that each line that 
you want it to execute must be in the right place 
or you will get no response or a SYNTAX ERROR. 
Study the example in Program 1 to see exactly 
what is necessary. 

Note that Program 1 is merely an example of 
setting up a boot program using the dynamic 
keyboard technique. If the files INVISIBLE 
WEDGE, PRINTER, and WORD PROC existed on 
a disk, the program would first enable the use of 
the Invisible Wedge utility as described below. It 
would then load and execute a printer setup 
routine called PRINTER. Finally, it would load 
and run a word processing program with the file 
name WORD PROC. 

Sleight Of Hand 

There is a hitch to this procedure if you want to 
use the Universal Wedge. That program clears 
the screen and prints a message when it's ex- 
ecuted, wiping out your carefully laid out screen. 
The part of the Wedge that prints the message is 
fortunately in BASIC, but it requires a bit of sleight 
of hand to modify since the BASIC line editor will 
change the machine code that does the work un- 
less you protect it. 

If you load the Universal Wedge without 
running it and use the Monitor (SYS 54386 for 
4.0), you will find what looks like a BASIC program 
from locations hexadecimal $0400 to $0496, termi- 
nated by the usual set of triple double zeros. 
Starting at $0500 and $0700, there are two blocks 



TURN YOUR 

COMPUTER INTO A 

FULL-BLOODED WORD 

PROCESSOR. 




©1983 Quick Brown Fox 



VIC 20" and Commodore 64" users, 
something very clever is lying in wait for 
you. It's called Quick Brown Fox!" 
Quite simply Quick Brown Fox is the 
quickest, easiest to learn, user-friendliest — 
and most versatile — word processing 
software running. 
Take a look at some of these crafty features. You 
full editing, even on standard displays. (The Fox supports most 
80-column boards too.) You get automatic reformatting of edited 
text, not the tedious paragraph -by- paragraph runaround. There's more. 
You get single-key operation, text moving, boilerplating, tab and 
margin settings, right justification, proportional spacing. You get in- 
telligent software that uses less computer memory (That's how come 
it even works with an off-the-shelf VIC 20.) You also get compatibility 
with a wide range of printers — plus plenty more. 
And you get it all for only $65. Doesn't that make you want to trot 
through your texts with a Quick Brown Fox' 

QUICK BROWN FOX" 

Call or write for more details: 

548Broadway. New York, NY 10012 (212)925-8290 

Dealer Inquiries Invited 



of machine code that do the actual work. If you 
also PEEK at the contents of decimal 42 and 43 
(which store the location of the end of the BASIC 
text and the start of variable storage), you will 
find that they point to a location at the end of the 
second block of machine code {$B8 and $08). 

Now POKE42,131 and POKE43,4 and type 
CLR. This tells the editor that BASIC really doesn't 
include the two blocks of machine code. You can 
then change the BASIC program as long as you 
don't increase it by more than 106 characters. Try 
to use less than this just to be safe. In Program 2, 
two UP CURSORS replace the CLEAR/HOME 
and all the CURSOR DOWNs in the original. 

You can now use the Monitor to save every- 
thing up to the address hexadecimal $08B8. And 
from now on you can load this version of the 
Wedge just as you would load the original. 

This same technique is equally applicable to 
the VIC-20 and Commodore 64 (see Program 3). 
For both these machines, the keyboard buffer is 
located in memory locations 631-640 decimal, and 
the number of characters in the buffer is contained 
in location 198 decimal. The VIC's narrow screen 
width must be taken into account when formatting 
the program. Some of the messages may run over 
onto a second line. 

A small investment in bootmaking now can 
pay big dividends later by causing fewer errors, 
saving time and making the computer easier for 
others to use. 

Program 1: Sample Boot Program 

100 QO$=CHR$(34) : REM DEFINE QUOTE FOR PRI 

NTING 
110 REM PRINT ENTRIES TO THE SCREEN IN PRO 

PER SPOTS 
120 PRINT" {CLEARU03 DOWN}lOAD" ; QO? ; "INVIS 

IBLE WEDGE";Q0$r",8" 
130 PRINT" {04 DOWNJrUN" 
140 PRINT" JdOWNIlOAD" rQ0$; "PRINTER" , -00$ ; " , 

8" 
150 PRINT" {04 down] RUN" 
160 PRINT" {02 D0\W } LOAD ";Q0$; "WORD PR0C"?Q 

0$;".8" 
170 PRINT" {04 DOWN 3 RUN { HOME 1 " 
180 REM POKE SIX RETURNS INTO KEYBOARD BUF 

FER 
190 REM POKE # OF RETURNS INTO LOG. 158 
200 F0RI=1T06 : POKE622-I-1 , 13 :NEXT;P0KE158, 6 

Program 2: invisible wedge 

5 A=12*16"3:REM $C000 

10 IFPEEKCa) 076THEN SYS1639;REM BASIC 2 
15 IFPEEK(A)=76 THEN SYS2151:REM BASIC 4 
20 PRINT" [02 UPIUNIVERSAL DOS SUPPORT LOA 

DED" 
2 5 NEW 



100 QO$=CHR$(34): REM DEFINE QUOTE FOR PRI 
NTING 



110 REM PRINT ENTRIES TO THE SCREEN IN PRO 

PER SPOTS 
120 PRINT" {clear} {03 DOWnJlOAD" ;Q0$ r "PRINT 

ER";Q0$;",8" 
130 PRINT" {04 DOWN}rUN" 
140 PRINT" {02 DOWN}LOAD"rQO$; "WORD PR0C";Q 

0$;",8" 
150 PRINT" {05 DOWN } RUN { HOME } " 
160 REM POKE FOUR RETURNS TO KEYBOARD BUFF 

ER 
170 REM POKE # OF RETURNS TO LOG. 198 
180 F0RI=1T04 :POKE630+I , 13 :NEXT: POKE198, 4 



20 ™ 

Lood 



CASSETTE MAGAZINE 



NEWSLETTER 



TTie Complete Monthly Publication 
and a tradition in the World of Computing. 

VIC SO"^ USERS 

Memorial Day brings flags flying, bands playing, foot- 
ball games, and education, fun, and adventure to 
20 Load Computerites. Don't be left out of the 
parade. Subscribe now - $50 per year ($30 for 6 
nnonthsl. 20 Load, 550 Grant Ave., Junction City, 
Kansas66441. (913)762-4730 

l\/rC-20 IS a trademark of Commodore Business Machines, Inc.) 



Home Control 

System 
for the VIC 20 




'Control up to 256 ligtits & appliances 
•ON, OFF, ALLON. ALLOFF Commands 
* 9 levels o) Brigtitness 
* Manual & Time Control Software 
• Uses BSR remote switcties 
* Plugs into User Port 

$qQ95 

only w ^ 

MasterCard or VISA Accepted 
Call 21 5-861 -0850 to Order 

GENESIS COMPUTER CORP. 

1444 Linden street 
Bethlehem, PA 18018 



1M COMPUTI! Mov1983 



i^^^^^^^^l^ 



JINS AM" 

EXECUTI 



'A 






Used at NASA, 
Kennedy Space Center 
With Multiple Applications Related ^^ 
to the Columbia Space Shuttle Project _ 
rescue operations, statistical j 
inventory and vehicle tracking. 




i 




USA 



space 
age 



micro 



ft ware 




JINSAM EXECUTIVE " 

has broken the 10,000 record limit. You 
may now have up to 65,000 records in one 
database. 

We also have included a free form 
report generator for data entry, elimi- 
nating the need for WordPro™ and have 
Included automatic mathematical relations 
eliminating the need for VislCalc™. How- 
ever, you still have these superb Interfaces 
available. 



Executive ™ will be available for CBJM 
and IBM personal computers. 



Il 




JINI MICRO-SYSTEMS, Inc 



DATABASE MANAGEMENT SYSTEM DESIGN 



BOX 274 KINGSBRIDGE STN., RIVERDALE, N.Y. 10463 (212) 796-6200 



Basic Atari BASIC Sorts 



E P McVlahon 



Choosiiii^a 5u;Y routine iliat cliiiiimitcs uiuicccfiinn/ 
searches can save i/oii lime. Four sortin;^ luctliods are 
examined in terms of tlieir spved, and there are some 
hints on niakini;^ sorts uvrk faster. 



Sorts - many programmers ignore them, many 
don't understand them, and most misuse them. 

Let's look at the insertion sort, the selection 
sort, and the bubble sort. (The widely used bubble 
sort is about the most inefficient sort routine 
around.) 

Why is it so widely used? Maybe because it's 
so simple: go through the list to be sorted and 
examine items, an adjacent pair at a time. If any 
pair is not in the correct order, swap the pair. 
Continue to the end of the list. If a swap was per- 
formed, repeat the abo%'e steps; if not, the sort is 
finished. This sounds more simple and direct 
than it may be. 

Some Terms Defined 

A file contains records (or items) which are to be 
sorted according to the keifs which are a part, or 
all of, each record. (The last name in a file of names 
and addresses is a key for alphabetizing the list.) 
We will assume sorted means "placed in the order 
of ascending or descending value of the keys." 
Another way to sort is to build an auxiliarv file of 
pointers which identify the records in the desired 
order- a good approach for large disk files. 

One more definition: a stable sort does not 
disturb the results of a previous sort when the 
sort keys are equal. For example, you sort a file of 
records consisting of names and addresses al- 
phabetically by first name (key = first name). You 
then sort the file by last name. If the sort is stable, 
when you have finished the second sort John Doe 
will follow Jane Doe and precede Joseph Doe; if 
not, the order of the Does will be arbitrary. 

Multiple passes through a stable sort (in 
reverse order of importance of the keys) will 
accomplish the same thing as a sort on multiple 
keys. Simply said, a sort on multiple keys checks 
the second key any time the first keys of two re- 
cords being compared are equal. This is how to 
convert any of the following single key sorts into 
a multiple key sort. 

Let's discuss the program listings now so 

166 COMPimi Mav19B3 



you can refer to them as you read the rest of this 
article. 

Bubble Sort 

The first program is a bubble sort written in Atari 
BASIC. I'll review this listing since some of the 
REMark lines will apply to the other programs, 
and sections of the code will be identical in the 
other programs. 

The file to be sorted is in string S$ and consists 
of N records each of length LREC. We will sort 
this file in place according to the key which is part 
of the record. The key starts at KB and ends at KF 
characters offset from the beginning of each 
record . 

Lines in the lOO's initialize; line 200 sets the 
clock to zero. Lines in the lOOO's and 1 lOO's are 
the sorts. Line 1500 reads and prints the clock; 
and the subroutine in the 2000's generates a ran- 
dom file to be sorted (each record consists of two 
random letters and a blank). 

Let's look at the bubble sort. Why is it so 
weak? Primarily because many redundant com- 
parisons are made, but also because records being 
moved are put down and picked up at each step. 
There really are better ways to sort which are just 
as easy. 

The bubble sort (Program 1) uses one trick to 
make the "standard" bubble sort a little faster. 
Each pass through the fife moves the largest re- 
maining out-of-placG record to its correct position. 
Also, we might be lucky and find some records 
already sorted. Remember that we use a flag to 
signalif another pass through the file is necessary. 
The trick is to use that flag to identify the location 
of the last swap made (line 1040). We never need 
examine past that point again; so, as shown in the 
program, FLAG and TOP limit the search. The 
bubble still isn't good enough. 

Insertion Sort 

I'll use a card player sorting a hand of 13 cards to 
help you visualize what's going on in each sort. 

Our right-handed card player does the inser- 
tion sort by holding the first dealt card in the left 
hand and the other 12 cards in the right. Notice 
that the first card is already "inserted" in the 
sorted file in the left hand. He or she examines 
the next card to be sorted, initially card number 



ATARI 
MEANS BUSINESS 



PAYROLL PACKAGE $195.00 

For the first time Financial Software Plus introduces a business 
package for the Atari 400 or 800 computer that simulates business 
packages found on much larger and expensive computer systems. All 
our business packages are written by an accountant-programmer and 
program designer so that you can be assured that our packages will 
meet your individual business requirements. Our Payroll Package 
features include: 

• User changeable tax codes - five different tax tables may be 
set up. 

• Will run on a one or two disk drive system at any time. 

• All reports including checks can be printed to the screen or 
printer - printer is optional. 

• Miscelianeous earnings and deductions categories are user 
specified and changeable at any time. 

• Can be used for one company or several companies without 
purchase of additional software. 

• Prints checks, W2's, month-end, quarterly, annual and tax 
reports. 

• Fixed or variable deductions. 

• Capacity of 100 employees per disk with an unlimited number 
of disks that can be used. 

• Will act as a stand alone package or a fully integrated system 
with our general ledger package. 

Stop on down to your nearest dealer and ask for a demonstration. 

Atari is a registered trademark of the Atari Computer Company 

General Ledger, Accounts Payable, Accounts Receivable and Inventory Packages Available Soon 



FINANCIAL SOFTWARE PLUS 

121 WEST CEDAR 

KALAMAZOO, MICH. 49007 

(616) 345-8546 

DISTRIBUTOR AIMD DEALER IfMQUIRIES WELCOME 



two, and compares it to the cards in the left hand, 
initially just the first card. If card two is bigger, it 
remains card two as it is placed in the left hand; if 
smaller, card one is shifted to become card two, 
and card two from the right hand becomes card 
one in the left. 

Each step, then, compares the next card to be 
inserted (from the right iiand) with the last card 
in the left hand. If the new card is larger, it be- 
comes the last card; if not, the old card in the left 
hand is moved one space lower, and the new 
card is compared with the next old card in line. 
This last step is repeated until the new card is 
inserted. 

Now what is the worst case for this sort? A 
file that must be inverted. Each card must be com- 
pared with every card in the left hand, and every 
card in the left hand must be moved in each step. 
Best case? When the file is in order except for a 
new entry at the end (new last card). 

Some people defend using the bubble sort 
when it's used to add a record to an already sorted 
file, but the insertion sort is faster at this, too. Just 
put the new record at the end of the file (new 
record number N) and change the loop indices 
(line 1000) to "FOR J = N TO N" and less than one 
pass through the sort will correctly place the new 
record. 

Program 2 is an insertion sort written in Atari 
BASIC. Lines 1000-1100 are the sort itself; the rest 
of the lines follow the same convention described 
for the bubble sort. 

Selection Sort 

The selection sort is just as easy. This time, the 
card plaver holds all the cards in the right hand 
and scans from left to right for the smallest. The 
smallest card is extracted, placed in the left hand 
as card one, and the cards in the right hand are 
shifted to the right to fill the gap caused bv the 
extracted card. The cards in the right hand are 
now numberecl two to thirteen. The process re- 
peats: scan the cards in the right hand, extract the 
smallest, and add it at the end of the cards in the 
left hand. Shift cards in the right hand to the right 
to remove the gap. When onlv one card remains 
in the right hand, it is the largest, and the sort is 
finished. 

The worst case for this sort is also a file that 
must be inverted. Each card that is selected is the 
last one in the set of unsorted cards. 

Let's look at the differences in these al- 
gorithms. In the insertion sort, we examined a 
sorted sub-list and insert a new record; in the selec- 
tion sort, we examine an iiiisorlcd sub-list and 
select a new record. Suppose you are interested 
in the first ten items in a UX)-item file. Which 
routine vs'ould you use? The selection sort of 
course, stopping after the tenth item is found. 

168 COmfUTf! MavW83 



If you implement the selection algorithm 
exactly as stated above to sort string variables, 
you'll find that shifting the "cards" in the right 
hand to remove the gap is inconvenient. (Try 
shifting a string of, say, ten characters five spaces 
to the right. If you don't know what will happen, 
try A$(6,16) = A$(l,10) and see what the result is.) 

A Couple Of Tricks 

Atari BASIC loves to shift strings to the left, so 
we'll modify the sort algorithm to take advantage 
of this. All we do is hold the unsorted cards in the 
left hand and put the extracted cards in the right 
hand. The gap is removed by shifting cards in the 
left hand to the left. Take a look at Program 3, a 
modified selection sort. There are a couple oi tricks 
there. The variable TAIL defined in line 1000 lo- 
cates the last record in the file SS- This location is 
the spot in our right hand where the selected card 
(record) will be placed. 

The second trick is using the variable LAST 
to remember information from the last examina- 
tion pass through the left hand. It is set to the 
next-to-the-smallest item in the list, so it has a 
head start on our next examination search. It is 
easy to save this information during the search. 

Note that we save time on every other search 
(unless there are ties - then we save more) because 
we have to reset the flag in case we do not hit a 
swap. Line 1090 extracts the selected record, line 
1100 moves the entire right side of the file one 
record to the left in one fell swoop, and the selected 
record is put at the tail. Lines 1140 to 1160 put the 
last record in its place at the end. 

What would the bubble sort look like to our 
card player? He would examine cards one and 
two, and swap them if necessary. He would then 
compare cards two and three, swapping if needed. 
The process continues with cards three and four, 
four and five, and soon, to Hand 13. Finished? 
Not yet. If any pair of cards were swapped, the 
process is repeated from the start. Have vou ever 
sorted cards this way? Would you? 

Modified Insertion Sort 

The string-moving trick in the selection sort 
suggested that the same trick could be applied to 
the insertion sort. This results in the modified 
insertion sort (Program 4), where the sorted file is 
on the right of the string and the unsorted part of 
the file is on the left. The first record is always the 
record to be inserted, and when the insertion 
spot is found, the string up to the insertion spot 
is shifted to the right, over the first record. 

This is a fast program; unfortunately, it is no 
longer as stable as the first three programs. It can 
be made stable by adding an artificial record to 
the file which is guaranteed to be the last record 
for any search key (no ties), since the instability 



400 + 400 = 600? 




600? Seems ridiculous, and 

at first glance that s what you 

probably thought, but in fact our 

"equation" above represents a 

reality that exists now. with 

the Tara 400 keyboard for the 

Atari 400. Designed to provide the 

Atari 400 user with the hardware 

of tomorrow, today. Designed with 

an understanding of the essential 

superiority of a keyboard as 

a man- machine interface. 

Designed with the user in mind. 

For example, our keyboard does 

not attach to the 400 with a 

ribbon cable, but fits neatly into 

the original housing In 5 minutes, 

directly replacing the old 

membrane panel, and is styled to 

complement the lines of the 

computer itself Sure, other 

keyboards have been sold, but 

who wants one that hangs off the 

computer, or whose keys fall off 



when you type on It? Our keys are 

actually gold-contact switches. 

offering Increased reliability and 

performance, second to none. 

Coupled with the Tara 48K RAM 

expansion board, you can easily 

see how 400 + 400 = 600.' 

providing the user today with the 

hardware of tomorrow. 

Why wait? This and many of the 

quality Tara products are waiting 

for you at your favorite dealer 

Or call us for the Tara dealer 

nearest you. He 'II be happy to 

show you how rudimentary it can 

all be with Tara. 




Computer Products inc 



Statler Building. 107 Delaware Ave., 

Suite 1610, Buffalo, NY 74202 (7)61 855-0133 

2 Robert Speck Parkway, Suite 1540, 

Mississauga, Ontario 1,42 1H8 

(416) 273-6820 



TARA PRODUCT LINE 

• Alan 400 KeytxDard 

• Atari 48K HAM 

• Alan 32K RAM 

• Apple 16K RAM 



COtHING SOON FROM TARA 

• Apple 64K/128K RAM 

• IBM 256K RAM 

• Alan 64K RAM 



'600 - The Alan redesigned lull keyboard verson 

ol the Atari 400. 

Atari and Atari 400 are registered trademarks 
ol Warner Commmunicalions. 



Li;co Computer Marketing & Consultants 



TO ORDER 

CALL US 



TOLL FREE 800-233-8760 

In PA 1-717-398-4079 



DUST COVER 
with Purchase of 

ATARI 800 48K .... $489.00 
ATARI 400 64K .... $349.00 

810 DISK DRIVE $419.00 

ATAR1 1 200 64K RAM ... $ call $ 




ATARI 

I ^p A Wvnef Commuri<ar>Oft5 Company 



ATARI HARDWARE 

810 DISK DRIVE..... $419.00 

41 RECORDER $75.00 

1 01 RECORDER $75.00 

850 INTERFACE $164.00 

PACKAGES 

CX482 EDUCATOR $119.00 

CX 483 PROGRAMMER $54.00 

CX48S COMMUNICATOR $219.00 

CX41 9 SOOKEEPER $1 89.00 

KX7104 ENTERTAINER $69.00 



SOFTWARE 

CXL4012 MISSILE COMMAND... $28.75 

CXL401 3 ASTEROID $28.75 

CXL4020 CENTIPEDE $32.75 

CXL4022 PACMAN $32.75 

CXL401 1 STAR RAIDER $34.75 

CXL4004 BASKETBALL $26.75 

CXL4006 SUPER BREAKOUT .... $28.75 

CXL4008 SPACE INVADER $28.75 

CX8130 CAVERNS OF MARS $31.75 

CX41 08 HANGMAN $12.75 

CX4102 KINGDOM $12.75 

CX41 1 2 STATES & 

CAPITALS $12.75 

CX41 14 EUROPEAN 

COUNTRIES $12.75 

CX4109 GRAPH IT $16.75 

CX4121 ENERGY CZAR $12.75 

CX41 23 SCRAM $1 9. 75 

CX4101 PROGRAMMING! $19.75 

CX4106 PROGRAMMING II $22.75 

CX41 1 7 PROGRAMMING III $22.75 

CXL401 5 TELELINK $21.75 

CX41 1 9 FRENCH $39.75 

CX41 1 6 GERMAN $39.75 

CX41 20 SPANISH $39.75 

CXL4007 MUSIC COMPOSER .... $33.75 

CXL4002 ATARI BASIC $45.75 

CX8126 MICROSOFT 

BASIC $65.75 

CXL4003 ASSEMBLER 

EDITOR $45.75 

CX81 26 MACRO 

ASSEMBLER $69.75 

CXL4018 PILOT HOME $65.75 

CX405 PI LOT E DUC ATOR $99 . 75 

CX41S HOME FILING 

MANAGER $41 ,75 

CX41 4 BOOKKEEPER $1 1 9.75 



MONITORS 



NEC JB12e0 $125.00 

NEC JB1201 $155.00 

NEC TCI 201 $315.00 

AMDEK300G $159.00 

AMDEK COLOR I $329.00 



MODEMS 

ANCHOR MARK 1 


$79,00 


ANCHOR MARK II 


$79 00 


HAYES SMART 


$239.00 


HAYES MICRO II 


$309 00 


CAT 


$144.00 


J-CAT 


S CAI 1 « 





PERCOM DISK DRIVES 

SINGLE DRtVE AT88 $389.00 

ADD ON $289.00 

SINGLE DRIVE 40S1 $529.00 

ADD ON $329.00 

DUAL DRIVE 40S2 $845.00 

DUAL HEAD SINGLE DRIVE 44S1 ...$649.00 
DUAL HEAD DUAL DRIVE 44S2 .... $789.00 



THIRD PARTY 

48K RAM 


..$99.00 


64K RAM 


.$149.00 
$25 50 


EASTERN FRONT 1941 . 


OUTLAW/HOWITZER 

WIZARD of WAR 

MY FIRST ALPHABET 


...$15.50 
...$31.00 
...$25.50 


NEW RELEASE 

400 KEYBOARD 


S 

. $99.00 
.$32.75 
.$25.75 
.$19.75 
.$24.75 
.$24.75 
.$39.95 
.$52.75 


MINER 2049er.. .,,, 


FROGGER 


PREPPIE 


SEA DRAGON 


STRATOS 

DISKY 


MONKEY WRENCH 2 





DISKETTES : In Stock 

BASF 


.,,$19.00 


ELEPHANT 


.,,$21.00 


MAXELL MDI .... 


...$34,00 


MAXELL MDIi 


,,.$44,00 




BUSINESS SOI- 1 WAR 

VISICALC 

LETTER PERFECT 


E 

.$159.75 
,$115.75 
.$159.75 
..,$75.75 


LETTER PERFECT ..ROM , 
DATA PERFECT 


TEXT WIZZARD 


.. .579.75 


SPELL WIZZARD 


...S64.75 


FILE MANAGER 800 t 


.. $69.75 


ATARI WORD PRO 


.5109.75 





POLICY 

DURING APRIL 



I In-Stock items shipped within 24 hours of order. Personal 
I checks require lour weeks clearance before shipping. No 
I deposit for COD orders. PA residents add sales tax. All products 
I subject to availability and price change. Advertised prices 

show 4% discount offered for cash. Add 4% for Mastercard and 

Visa. 



TO ORDER 
CALL TOLL FREE 

800-233-8760 

In PA 1-717-39.8-4079 
or send order to 

Lyco Computer 
P.O. Box 5088 
I Jersey Shore, PA 1 7740] 



Lyco Computer Marketing & Consultants 



TO ORDER 

CALL US 




TOLL FREE 800-233-8760 

In PA 1-717-398-4079 

SAVE = PRINTERS 

i 

PROWRITER $375.00 

NEC 8023A $439.00 

SMITH CORONA TP1 ...$569.00 



THtRD PARTY SOFTWARE 



ONLINE 

WIZARD a PRINCESS $28.75 

FROGGER $26.75 

CROSS FIRE $34.75 

BRODERBUND 

CHOPLIFTER $26.75 

APPLE PANIC $22.75 

SERPENTINE $26.75 

STAR BLAZER $24,75 

CBS 

KRAZV SHOOT $31.75 

KSTAR PATROL $31.75 

K-RAZY ANTICS $31 .75 

K-RAZV KRITTERS $31.75 

AUTOMAT. SIMULATION 

INVASION ORION $20.75 

TEMPLE OF ASPHAI $28.75 

STAR WARRIOR $28.75 

KING ARTHUR'S HEIR $23.75 

RESCUE AT RIGEL $23.75 

DATA SOFT 

PACIFIC HIGHWAY . $24.75 

CANYON CLIMBER . $24.75 

CLOWNS AND BALLOONS $24.75 

MICRO PAINTER S24.7S 

SANDS OF EGYPT $24.75 

EASTERN HOUSE 

MONKEY WRENCH II „, $52.75 

ALIEN GROUP 

SAM ....$45.75 

VOICE BOX $119.75 



ADVENTURE INTER. 


PREPPIE 

STRATOS 

SEA DRAGON 


$19.75 
$24.75 
$24.75 


IDS! 




POOL1.5 

POOL400 


$25.75 
$29.75 
$29.75 


SPEEDWAY BLAST 


GAME STAR 


STARBOWL FOOTBALL 

BAJA BUGGY 


$CALL 
$24.75 


ROKLAND 




WIZARD OF WAR 


$24.75 


GORF 


$29.75 


DELUX INVADER 


$28.75 


THORN EMI 




SUBMARINE COMMANDER . 
JUMBO JET 


$35.75 
$35 75 


KICKBACK 

SOCCER 


$35.75 
$35.75 


SYNAPSE 




SHAMUS 

SLIME 


$24.75 
$24.75 


BUSINESS somi 


VARE 


LETTER PERFECT 


$115 75 


LETTER PERFECT (ROM) 

DATA PERFECT 


$159.75 
$75 75 


TEXT WIZARD 


$79.75 


SPELL WIZARD 


$64.75 


FILE MANAGER 800+ 


$69.75 


BIGS 


1 


MINER 2049ER 


$35.75 



OKIDATAa2A $419.00 

OKIDATA 83A $639.00 

OKIDATA84 S1 029.00 

OKIDATA TRACTOR $63.00 

STARWRITER $1475.00 

PRINTMASTER $1675.00 

PRINTER CABLES 

for Atari 

CITOH S35.00 

EPSON S35.00 

NEC $35.00 

OKIDATA S35.00 

SMITH CORONA S35.00 

JOYSTICKS 

Le Slick $32.75 

Atari $9-25 

POINTMASTER $12.75 

WICO 

WICO COMMAND CONTROL. .$22.75 

WICO RED BALL $26.75 

WICO TRACK BALL $52.75 

EX TENSION COR D $8.75 

COMPUTER 
COVERS 

W» $a.99 

810 $6.99 

-«» $6.99 

-•10 S6.99 

COMPUTER 
FURNITURE 

GUSDORF $59.75 

BUSHCTA120 $69.75 

add-on TV shall $17.95 

INHOME 

400 KEY BOARD jgg „ 



occurs only with the last record in the file. To to last record swapped (start 

examine the stability of these sorts, sort first with ^^ '^ ' 

both key. (KB and KF)e,ual.o two, and then ' "° ;^, ^^^i^jl^^^^^K^^^^Ji^^iJi^^r?; 

sort With both equal to one. EN 1080:REM check if no swap ne 

There is another way to make the modified eded 

insertion sort stable, and that is to pick the record loio flag = J:REm -flag that we^re swap 

to be inserted from the end of the Linsorted part ..^ pmg record j 

f,, „■•,., 4 I • ,. J r J IV J lu5u HOLD* = S* ( < J-l ) *LREC+1 ) 

of the lis (record J instead of record l)and remove lo^o s* < ( j-i > *lrec-h i . j jlreo =s* ( j *lr 

the equal sign from the sort test in line 1020. This ec+i . ( j + i > ♦lreo 

results in a slower program than the modified 1070 s*(j«lrec+i, f j + i ) *lrec) =hold*: r 

insertion sort shown. ^^ 1050 to here swaps J and J + l 

(not J-1 > 

Powering Up loso next j 

A short set of runs of the four programs (with no ^'^'^^ H!.'*^ s* = rem remove this for sp 
DDTXTT I. ,. L J ■.. XT f->^x eed. This shows -file after eac 

I^KINl statements and with N = 50) gave average h pass. 

times of 80.8 seconds for the bubble, 48 for the io90 IF flag<; >o then top=flag-i : goto 

insertion, 34 for modified selection, and 23.3 for ioiosrem if a swap was made, r 

modified insertion. The programs can be powered, ,,^^ ?^^^-,I?^ ^""^ start over. 

made taster. One easy way is to precompute the j ^ 

constant part of the test in each sort statement. In iioi rem * end of sort{i5 spacesj* 

the insertion sort, for instance, add line 1015 1102 rem ***«******«***«*»*«*»**««*« 

HOLDS = S$((J' 1 )*LREC + KB, (J- 1 )*LREC + KF) * * 

J u 1.-1. I. T ir-<i rMP c ll. -iij fLi I49 REM read and print the clock 

and subshtute HOLDS for the right Side of the i^o^ print < (peek ( 1 b) *2S6-hpeek ( 19> ) * 



test in line 1020. 



256+PEEK (20> ) /hO: STOP 



2035 NEXT K: PRINT S*;PRINT 
040 RETURN 



If the above descriptions of the sort algorithms 1V90 rem generates a random file 

aren't clear to you, try sorting a hand of cards 2000 for k=o to n-i 

according to the rules Then execute the programs ^'''" s* (k*3.1) =chr* (i nt <rnd (O) *26.6t 

as listed. If it will help, print out the loop indices 2020 s* (k*3 + 2> =chr* ( int (rnd (O) *26 + 6! 

at each step to see what's going on and how the ) > 

tricks work to save a few searches here and there. 203O st<K*3+3) 

If you're going to use these routines in another 

program, take out the REMs and print statements _ ^^ 

for more speed. Better vet, code the sort you need ffogtom 2: insertion Sort 

1 ■ "^i ' ^ 100 DIM S4 <200) 

m machine language. , ^ 110 dim hold* (3) 

There are more efficient (and more complex) 120 lrec = 3: kb=i : kf = 2 

sorts: Shell's sort. Quicksort, and Heapsort, for 130 n= 1 3 

examples. A quite complete study and reference i'^*^' gosub 2000 
on sorting (and searching) is the third volume of 

DonaldE. Knuth' s The Art of Computer Program- ^^^-, r^m »»*********«***««****«***«** 
miiig (Addison-Wesley, Reading, Mass., 1973). »« 

_ ^ - „ ^,, _ . 991 REM «C28 SPACES:* 

Programi: Bubble Sort ^^^ re„ , insertion sort 03 spaces:* 

100 DIM S«<200):REM the file 993 REM *<:28 SPACES}* 

110 DIM HDLD*(3>:REM temporary space 994 REM **************************** 

to move a record ** 

120 LREC=3:KB=1:KF=2:REM record leng lOOO FDR J=2 TO N:REM pick record to 

th, begining and end of KEYfield be inserted 

130 N=13-.REM number of records lOlO I=J-J:REM I is the end of the s 
140 GDSUB 2000:REM generate random f orted part of the file (left ha 

200 P^KE 20,0:P0KE 18,0:P0KE 19.O:P0 1020 IF S* ( ( I - 1 ) »LREC +KB , ( I - 1) *LREC + 

KE 2oto=REM start clock at zero KF X =S* ( ( J - 1 ) *LREC*KB , ( J - i ) *LRe 

990 REM **««***«***«*****«»**«**«*** C^-KF) THEN 1050:REM should rec 



200 POKE 20,0:P0KE 18,0: POKE 19,O:P0 
KE 20, O 



J be inserted' 
1030 I = 1-1:REM no. look at nB>;t sort 



** 

991 REM *<:2s spaces:* 

992 REM * bubble sort<;i6 SPACES>* ^d record 

99^ REM *<28 SPACES! * i^'^O IF I >0 THEN 1020: REM unless thi 
994 REM »«»«»*******«******»****«*** 5 is *h^ first record 

J 1045 REM insertion starts here 

lOOO T0P = N-1 ^'^^'^' ^^ I=J-1 THEN 1105:REM don't in 
1030 FLAG=0:REM points to last recor sert J on itself ,.,_,,, ^ 

d swapped or zero 1060 H0LD* = S* ( ( J - 1) *LREC+ 1 , J *LREC) : R 
1020 FOR J=l TO T0P:REM only look up EM pick up rec J 

172 COHPUTI! MavWB3 




la: 



mmm 



THIS POKER PLAYER HAS SOMETHING 
UP HIS SLEEVE . . . 
HE TALKS! 



The makers of S.A.M,. the Software Automatic f\/louth. now 
bring you a revolutionary talking game: POKERSAM. He 
narrates every hand aloud, naming ttie upturned cards, 
announcing ttie bets, and wisecracking wtienever he 
gets the chance. Like a lot of poker players, he's some- 
times full of bluster and he isn't always a good sport. But 
he's always a real character with a gift for gab. 

Your Atari needs no separate speech synthesizer (o 
produce POKERSAIW's speech. It's all done with the 
S.A.M. speech system. As you may know. S.A.Ivl. is available 
separately as an untimited-vocabulary speech synthesizer 
that you can access in your own programs. POKERSAM is 
not a tool for creating your own computer speech, but it 
contains a small module of the S A.f\/I. system. This means it 
can make any Atari computer speak, without additional 
hardware or software! 

Dealer inquiries welcome 



by Jerry White 
For the Atari 400. 800, and 1200 XL • Disk or cassette 

Requires 32K RAM • Suggested retail: S24.95 

To order direcl Ifom DON T ASK. send a check or money order or call 1o order 
COD Add S2 00 shipping and handling Californi,! rtisidfinis add 6"ii s^\p-^ lax 
(6 5% if you reside in L A Coimty} Please specify disk or cassette version. 

Registered owrK'rs of S A M for the Alan you can gel a special low-priced u«riiion 
of POKERSAM Please write lo DONT ASK lor informalion and he sure to indi- 
cate your SAM serial number 



D(DnT ASK 

COMPUTER SOFTWARE 



2265 WestwoDd Bl.. Ste B-1 50 

Los Angeles, CA 90064 
(213) 477-4514 or 397-8611 



ATARI IS ,1 tiademarli ol ATARI INC 



NOW! For your A^ari 400'''/800''' 



MPP-1100 Parallel Printer 
Interface 




MPP-1100 Parillal 
Printer {mmrimcm 



wO 



MPP-1000 Modem 



MPP.1000 

Moftom 



^^TE- 



r 



3 



No Atan 850^^ Interface fyloctule needed. 

Compatible with all softtware [including Visicalc^". Text 

Wizard™, and RIemanager BQQ^''^. etc] 

5 foot cable with Centronic plug [compatible with Epson, 

NEC, IDS, etc. ~ adaptor available for Atari 825^'*^]. 

Faster data transfer. 

2 year warranty. 

Replacement ROM for operating system. 

Compatible with fvllCROBITS IVlodem. 

8 bit data transfer for graphics 



mpp 



only 



miCROBITS 
PERIPHERPL 
PRODUCTS 



• No Atari 850''" Interface IVIodijte Needed 

• Smart Terminal Software 

• 1 6K Tape/Disk 

• Direct Connect 

• Connects to Joystick Port #4 
Smart Terminal features: 

• Multiple Buffers 

• Off-line Editing 

• Upload/Download of Text and Programs 

• Binary RIes 

■ Full/Half Duplex 

• ASCII/ATASCII Translation 

• Allows Transfer of RIes Larger than Memory 

• Variable Baud Rate 

• Parity Options 

• 100% fylachine Language 

only $19S.QO 



434 W. First Street • Albany, Oregon 97321 • [503] 967-9075 



MOV1983 COMPVTI! 173 



Program 4: Modified insertion Sort 

lOO DIM S« (200) 
110 DIM HOLD* (3) 



1070 FOR K=J-1 TD I+l STEP -1:REM 5I vially goes at the end 

ide sorted records to make room 1150 S* ( 1 > =S* (LREC+ 1 ) 

■for J 1 1 60 S* (TAIL) =HaLD* 

loao S* (K*LREC+1 , <K.+ 1 > «LREC) =S* ( (K-1 1170 PRINT S* : REM a 1 1 don e , t a k e a loo k . 

) *LREC+1 , K*LREC> 1200 REM ****««**«**«*««»**«***»»**» 
1090 NEXT K t* 

1100 S* ( I*LREC+1 . ( I + l ) *LREC)=HOLDS: R 1210 REM » end o-f sortM5 SPACES3* 

EM insert rec J 1220 REM «»*»»«»«»«** t t ««**«»»** t »* * 
1105 PRINT S*:REM take a look at the *t 

file 1500 PRINT ( ( PEEK ( 1 8 ) *256 + PEEh; ( 1 9 ) ) » 
1110 NEXT J 2564-PEEK (20) ) /60: STOP 

1120 REM »»***»*»«*««»«*****»****»*« 2000 FOR K=0 TD N-1 

«* 2010 S* (K«3+l ) =CHR* ( INT(RNDiO)«2A + 65) ) 

1130 REM * end of sortClS SPACES!* 2020 S« ( K *3 + 2 ) =CHR« ( I NT( RND( O )* 26 + 65) > 

1140 REM «****«****««*»««»****»«»«*« 2030 S*(K*3+3)=" " 

** 2035 NEXT K; PRINT S*: PR INT 

1500 PRINT ( (PEEK ( IS) *256 + PEEi< ( 19) ) * 2040 RETURN 

256+PEEK(2 0) )/60:ST0P 
2000 FOR K=0 TO N-1 

2010 S* (K«3+l ) =CHR* ( INT (RND (0) *26 + 65 * *^"^' ?^" S«(200)^ 

> ) 

2020 S* ( K*3+2) =CHR* ( INT (RND ( 0) »26+65 120 LREC=3 : KB= 1 : KF=2 

) ) 130 N= 1 3 

2030 S*(Kt3+3)=" " 140 GDSUB 20O0 

2035 NEXT K:PRINT S*:PRINT 200 POKE 20,0:P0KE 13,0:P0KE 19.0:P0 
2040 RETURN KE 20,0 

Program 3: Modified Selection Sort '''''' ^f ************,*****»**»****** 

100 DIM S*(200) <^91 REM *<:28 SPACES}* 

110 DIM H0LD*(3) 992 REM * modified insertion sort 

120 LREC=3:KB=1:KF=2 {4 SPACES>* 

130 N=13 993 REf^ *C2S SPACES]* 

140 GOSUB 2000 994 re^ **»««»«»««»«******»»««*«*«** 

200 POKE 20, O: POKE 18, O: POKE 19,0:PD ** 

KE 20,0 1000 FOR J=N-1 TO 1 STEP -1:REM J wi 

990 REM *#*#*****##**#************** ;^j (-,g the beginning of the sort 
** ed 1 i St 

991 REM *{;28 SPACES]* 1010 I=N:REM I is the end of the sor 

992 REM « modified selection sort ted part of t h e f i 1 e ( r i gh t hand) 
{4 SPACES]* 1020 IF S* < ( I -1 ) «LREC + KB. ( I - 1 ) *LREC + 

993 REM *C28 SPACES]* KF ) < =S* ( KB , KF ) THEN iOS0:REM sh 

994 REM »*********»**#««««««***«**** Duld rec 1 be inserted here? 

** IO30 I = I-1:REM no, look at ne>;t sort 
1000 TA IL= (N-1 ) *LREC+1 : REM define la ^^ record 

st record location 1040 IF I > J THEN 1020:REM unless thi 
1010 LAST = 0:REM initialize 5 J5 t^^ie first record in the so 



1020 FDR J=0 TO N-2:REM select a rec 



rted list 



"""tJ 104S REM insertion starts here 

1030 I NDEX=LAST : LAST=Oi REM adjust po J050 jp 1=1 THEN 1105:REM don't inse 

inters from last search rt J on itself 

1040 IF lNDEX>N-J-2 THEN 1090: REM ne j^iO HaLD«=S« (1 . LREC ) 

Kt selection is now last unsort 1070 S* ( 1 , ( I - 1 ) « LREC ) =S* ( LREC+ 1 , I *LR 

ed rec EC):REM slide records to make r 

105O FOR I=INDEX+1 TO N-J-1:REM sear ^^^ ^^ insert rec 1 

ch unsorted part of file 1100 S* ( ( I - 1 ) «LREC+ 1 , I *LREC ) =HOLD« : R 
1060 IF SS ( I *LREC+KB, I »LREC+KF) <S* ( I g^ insert rec 1 

NDEX*LREC+KE, INDEX*LREC+KF) THE 1 j 05 PRINT S«:REM take a look at the 

N LAST=INDEX : INDEX=I : REM best tt file 

2nd best 1110 NEXT J 

1070 NEXT I 1120 REM *************************** 
1080 IF INDEX=N-1 THEN 1120:REM reco ^ 

rd is in place 1 I 30 REM » end of Bort<!15 SPACES]* 

1090 HOLD*=S* ( I NDEX«LREC+1 ) : REM pick 1140 REM ****«***»*«»******»«******* 

up selected record *t 

1100 S$ ( INDEX*LREC+1 ) =S* ( ( INDEX + 1 ) *L 150O PRINT ( ( PEEK ( 1 S ) *256 + PEEK ( 1 9 ) ) » 

REC+1):REH slide many records t 256+PEEK ( 20 ) ) / 60 : STOP 

ocloseup space 2 000F0RK=0T0N-1 

1110 S« (TAIL ) =H0LDt: REM put selected 2OIO S« ( K«3+ 1 ) =CHRt ( I NT( RND( )* 26 + 65) ) 

ren at end 2020 S* ( K* 3 + 2 ) =CHR« ( I NT! RND( O )t 26 + 65) ) 

1120 PRINT S«:REM take a look 2030 S*(K«3+3)=" " 

1130 NEXT J:REM ne>:t selection 2035 NEXT K:PR1NT S«:PRINT 

1140 H0LD*=S«:REM last selection tri 2O40 RETURN ® 

17i COMPUTE! MOV 1983 



Beginners: see the 

special program 

typing instructions 

on page 128. 



QUICK DRAW 



ATARI 400/600 



PRICE 19.95 



Quick Oriw it > ^uick ihd *«»y wiy to "draw" and "itva" picturas in graphks 
mods 3-11. To start, put in tha Quick Draw diik and turn the powaron. Salact 
th6 di-awintj program frpn Xht pr^ram menu and a rrMnu of the picturas on djtk is 
displavfid. Ydu are also prompted for th« "graphics mode", "load pictuj^e name", 
"savft picture hinw" and "eras* scre*n v^n"- Note, graphics mode fl has the 
highest resolution and 4 colors. Graphics moda 3-11 require the GTIA chip. 
Answer the prompts a.nd yoM are ready to draw a picture. To plot a dot, you 
position a cursor using the joystick and press the fire button. A dot i$ then 
platted under the cursor. Holding the fire button down and moving the ioyitick 
will contjnously plot dots making lines. To draw a straight line, you position two 
cursors ufing your foystick and press the fire button. A straight line is then 
drawn between the two cursors. Holding the fire button down and moving the 
jtiystick will ccntinously draw lines maktng boxes. The keyboard is used to 
change from plot to draw n'KXJe and to change colors- Many other functions are 
used including sound, mirror and roll. With Quick Draw you can recreate pictures 
traced on your picture tube of your favorate games. Pictured drawn on clear 
plastic and taped ta your picture tube may also be recreated with Quick Draw. I 
am also trying to form a picture club to buy, tell and trade pictures drawn with 
Quick Draw. 

Requires: ATARI 4O0/6O0, 32k. BASIC, 1 disk drive, DOS 2.0 and 1 joystick. 
To buy, send a check for 19.95 to: 

Steven Easton ' 



MAKES ATARI 
BASIC FLY. 




With ABC^", Monarch's |new BASIC 
compiler for ATARI 400* and 800, you 
develop and debug pro-1 grams using 
your ATARI BASIC car- #tridge, then 
use ABC to transform ■ them into 
compact code that runs* up to 12 
times faster, without the ^cartridge 
(and protects your source^code, too). 
40K and disl< required. ^^ For your ABC 
diskette and manual.^^send check or 
money order for ^F' $69.95 (or $9.95 for 
manual alone) .^^ Monarch Data Systems 
^^P.O. Box 207, Cochituate 
^^^MA 01778, (617) 877-3457. 



MastercardA/isa by phone. Dealer 
inquiries invited, Mass. residents add 
5% sales tax. ATARI, ATARI 400, and 
ATARI 800 are trademarks of ATARI, Inc. 





/iW 



The Source for Computer Books 

Atan 400/800 & 

2600/5200 VCS Owners - 

This Is Your Book! 

The Addison- Wesley Book of 

ATARI" 
SOFTWARE 1983 

Jeffrey Stanton, Robert P. Wells, Ph.D., 
Sandra Rochowansky 



ATARI 
SOFTWAI 

1983 

Santo Rxhowimf .,, 



" bnnk tKolMlDult.. 



Are you missing out on new Atari software? Looking 
for help in selecting among the hundreds of new 
and existing software packages? THE ADDISOX- 
WESl.HV BOOK OF ATARI SOITWARE 1983 is the 
up-to-date, complete resource book you need. 

• Over 300 programs described and e\aluated. 

• Games and entertainment programs. 

• [kisiness programs for home and office. 

• Educational programs for school and home. 

• The new Atari 5200 \'CS games machine. 
Sa\e mone\' and bu\' vour soft\\-are wisel)' with 
THE ADDLSON-WESLEY BOOK OF ATARI SOFT- 



WARE 1983! 

$19.95 paperback 



B. Dalton stacks a 
stores nationwide 


complete selection 
Checi( the Vellon 


of computer books in 700 
Pages for the store near you. 




Aririrnan 






Clly 


qtnto 


7in 


Phn™ Mr, 



G Ctieck/Money Order Enclosed 

D VISA r MasterCard "_' American Express 



Card No 

Book Title- 



. Exp. Oate_ 



Please send $1.75 tor postage and hpH' 
Please add appropriate sales tax 

B. Oalton Books 
9340 James Ave. S. 
Minneapolis. HN 5S43T 



America s Favorite Bookseller | 



PET Super Editor 



Craig Disston 



Create slriiigs on screen from single keysirokes. prcveiif 
scrolls, softkei/, define control kei/s, transfer the entire 
screen into an array - these and other techniques can be 
achieved with this versatile screen editing subroutine. 
For data bases, mailing lists, assemblers, or any other 
program ivhicli requires frequent user input, the ideas 
and examples in this article should prove of value. It 
works 0)1 any PET/CBM. 



One of the first items many people buy for their 
computers is a word processing program. A word 
processor (or its cousin, the text editor) allows 
text data to be entered, changed, added, or deleted 
at will. Because a word processor is screen- 
oriented, the user can manipulate the displayed 
text and quickly perform editing functions. 

Word processing is not the onlv application 
which requires the input of extensive text data. 
Other applications, such as mailing list manage- 
ment or data base management, also involve the 
entry of much text data. In manv of these pro- 
grams, however, input is laborious and inflexible, 
limited to line-bv-Iine entries. 

With a text editor, text entry is easy. Input 
for other applications can be just as easy. Although 
most word processor and text editor programs 
are written in assembly language, a simple, fast 
BASIC routine provides some of the advantages 
of the dedicated text processors, without resorting 
to machine language. This routine can be incor- 
porated into any program. 

This article introduces a use of the GET com- 
mand that gives the programmer full control of 
the keyboard and the screen. I have used it to 
write a text editor, a mailing list program, and an 
assembler-editor. The routine described below is 
screen-oriented, displays a blinking cursor, lets 
each kev act normally unless altered by the pro- 
grammer, and is as fast as the fastest typist. 
Although 1 have written this routine for the PET, 
the idea can be used with many computers. It is 
necessary to know only a few operating system 
locations. 

176 COMPUni WlavWSS 



What GET Does 

The GET command in most BASICs polls the 
keyboard and returns a value if a key has been 
struck since the last inquiry. The TRS-80 equiva- 
lent is INKEY$. If a key has been struck, GET 
returns the ASCII value of the key struck; other- 
wise, it returns the null string (string of length 
zero). Hitting RETURN is not necessary, and the 
key hit does not appear on the screen, unless the 
program provides for that. GET is often used in 
games for a waiting loop: 

10 PRINT "HIT ANY KEY TO CONTINUE." 

20 GET Z$: IF Z$= "" THEN 20 : REM NULL " 

STRING 
30 < PROGRAM CONTINUES > 

In another common u.se of GET, the answer 
from the user will appear on the screen as soon as 
a valid key is hit: 

10 PRINT "DO YOU WANT [QUESTION]? ANSWER 

'Y' OR 'N' "; 
20 GET Z? : IF Z? <>"Y" AND Z? <> "N" THEN 

20 
30 IF ZS = "Y" THEN PRINT "YES": ... YE 

S RESPONSE 
40 PRINT "NO": ... NO RESPONSE 

The previous example demonstrates two 

things. First, the keyboard canhe select iveiy oiabled . 
(This is sometimes called softkey, since the keys 
are defined by software, not hardware.) Each key 
can have its usual meaning, a special meaning, or 
no meaning. (If the key has no meaning, it is said 
to be disabled.) Second, the program determines 
what screen output, if any, there is for each kev. 
(By "key" we mean a value that can be input from 
the keyboard. Most keys have a shifted and an 
unshifted value.) 

Combining GET With Softkeys 

These two features can be combined to allow full- 
screen editing and input under program control. 
This is far superior to the liiie-by-line function of 
the INPUT statement. The routine below has the 
following advantages: 

• full-screen editing. 



BUSICALC 



BGSICALC A Honey of an Electronic Spreadsheet 
Why electronic spreadsheet programs? 

Electronic spreadsheet programs allow the user to create a gridsheet, 
spreadsheet, worksheet, or any other table of information, using the 
memory of the computer as pencil and paper The computer display or 
terminal acts as a window through which the user views the information 
as it is entered. Textual information {such as headings), numerical values, 
and formulas can easily be entered into the spreadsheet. 




n B El BO an n HO a k3 s> es 
gia QmEi^a^cin^iaEaDiiB bb 

aaaaaaa b a si b a^a jsb es Ei 





For Commodore 64 

For Commodore VIC 20 

For Commodore PET/CBM 40 columns 

For Commodore CBM 80 column/SuperPet 



BUSICALC Your Computer Drone for Rei:)etitive Calculations 

The outstanding advantage of using a computer is that it acts not only 
as a pencil and paper but as a perfect eraser and an automatic calculator 
The user can quickly and easily make any number of alterations to the 
data within the table. The BUSICALC will evaluate any formula using the 
data that has been entered. Further, it retains the formulas and displays 
the resulting value. With BUSICALC controlling the entry of data, provid- 
ing a comprehensive memory, and performing arithmetic, the preparation 
of a spreadsheet is faster and more accurate than if it were prepared 
by hand. 

BUSICALC With the Sting Removed from the Prices 

BUSICALC 20 only $49.00 for the VIC 20 

BUSICALC64 only $69.00 for the CBM 64 

BUSICALC 40 only $79.00 for the original 40 column PET/CBM 

BUSICALC 80 only $89.00 forthe original 80 column CBMs and SuperPets 




BOSICALC AVAILABLE NOW FROM YOUR LOCAL DEALER 

(800) 227-9998 
FOR THE NAME OF YOGR NEAREST DEALER 

California, Canada, Alaska and Hawaii please call (415) 965-1735 



i 



Skyles Electric Works 

231G South Whisman Road 
Mountain View, CA 94041 



Europe please contact Supersoft, Winchester House, Canning Road, Harrow Wealdstone, Middlesex, England HA3 7SJ, Tel. 01 861 1166 



INTERNAL MEMO] 







/y 




/ 




/ 






She needs ^Superscript'! 



Features 



Provides full screen edit, delete, erase, hsert, 
transfer and document merge facilities. 
Simple facilities to send mallsfiots to standard 
address lists. 

Powerful aids to produce tables with wide 
screen, up to 240 columns, Inorlzontal. decimal 
and vertical tabs. 
Search! with optional replace. 
Comprehensive printer controls with control 
of margins, lines per page, underlining, bold 
print, super and sub scripts, variable tine and 
character pitch. 



SupeM^ 



Features 



Dictionary in excess of 30.000 words, 
available In English or American spelling. 
User definable dictionary (capacity for 
approximately 1 70,000 words on 8050 disk 
drives) with facilities to add. delete, print or 
merge with standard dictionary. 
Spelling checker verifies largest 'Superscript' 
document In less than two minutes. 
Displays totals of words, different words and 
unrecognized words. 

Editing of unrecognized words In document 
Includes options to accept, ignore, change 
or add to user dictionary. 



'Superscript' transforms your 
Commodore computer into a true Word Pro- 
cessor, enabling your secretary to turn out 
high quality letters, mailshots, quotations, 
etc., faster and easier than ever before. 

But spell? — Adding 'Superspell' gives 
you access to an extensive dictionary with 
automatic checking of any document entered, 
enabling recognition of spelling errors and 
mistypes. 

If she wants a better machine, and you 
want the very best of Word Processing, then 
you both need a Commodore with 
'Superscript' and 'Superspell' available from 
your local Commodore dealer. 

Superscript and Superspell run on the 2001, 3016/32, 4016/32, 
8032 and 8096 Commodore computers, 2040, 3040, 4040 and 
8050 disk drives, all Commodore printers and a wide range of 
letter quality printers. 



±5 

Precision 
Software 



'a Professkxmrs Word Processcr 



fA Prolessionars Ward Processor 

Precision Software Limited, 
4, Park Terrace, Worcester Park, 
Surrey KT4 7 JZ, England. 
Telephone 01-330 7166 



For further information concerning these outstanding software products contact your local SUPERSCRIPT 
distributor as shown below. 



Alabama 

M. A. G. 

Athens 

Georgia 

404 353 8090 

Alaska 

B.G. Systems 

Anchorage 

907 276 2986 

Arizona 

Gerald Hasty & Co. 

Las Vegas 

Nevada 

702 737 5670 

Arkansas 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

California 

P. E. 0. 

Anaheim 

714 778 3007 

Colorado 

Commonwealth Computer Inc. 

Overland Part( 

Kansas 

913 648 8086 

Connecticut 

Mulli Business Computer Systems 

Portland 

203 342 2747 

Delaware 

Prolessional Micro Services 

Baltimore 

Maryland 

301 325 5725 

Florida 

U. A. G. 

Athens 

Georgia 

404 353 8090 

Georgia 

M.A. G. 

Athens 

404 353 8090 

Idaho 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

91 3 648 8086 

Illinois 

Cambridge Business Systems 

Chicago 

312 525 3900 

Indiana 

Srepco 

Dayton 

Ohio 

513 224 0871 

Iowa 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 



Kansas 

Commonwealth Computer Inc. 

Overland Park 

913 648 8086 

Kentucky 

Srepco 

Dayton 

Ohio 

513 224 0871 

Louisiana 

Commonwealth Compulef Inc. 

Overiand Park 

Kansas 

913 648 8086 

Maine 

Best Business Equipment 

Worcester 

Massachusetts 

617 755 1077 

Maryland 

Professional Micro Services 

Baltimore 

301 325 5725 

Massachusetts 

Best Business Equipment 

Worcester 

617 755 1077 

Michigan 

Newman Audio Video 
Grand Rapids 

616 243 3300 
Minnesota 

Commonwealth Computer Inc. 
Overland Park 

Kansas 

913 648 8086 

Mississippi 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

Missouri 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

Montana 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 6488066 

Nebraska 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 6488086 

Nevada 

Gerald Hasty & Co, 

Las Vegas 

702 737 5670 

New Hampshire 

Best Business Equipment 

Worcester 

Massachusetts 

617 755 1077 



New Jersey 

Geneva Technology 

Cranlord 

201 276 1144 

New Mexico 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

New York Slate (North S West) 

Upstate Computer Shop 

Whitesboro (Nr. Uttica) 

3157688151 

New York State (South) 

Computer Emporium 

Middle:own 

914 343 4880 

New York Slate (Long Island) 

Centerbrook Software 

Livingston Manor 

914 439 3591 

New York City 

Geneva Technoiogy 

Cranford 

New Jersey 

201 276 1144 

North Carolina 

M. A. G, 

Athens 

Georgia 

404 353 8090 

North Dakota 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

Ohio 

Srepco 

Dayton 

513224 0871 

Oklahoma 

Commonwealth Computer Inc- 

Overland Park 

Kansas 

913 646 8086 

Oregon 

The Computer Place 

Klamath Fails 

503 882 9603 

Pennsylvania (East) 

Mainline Computer Center 

Wayne 

215 687 8500 

Pennsylvania (West) 

Srepco 

Dayton 

Ohio 

513 224 0B71 

Rhode Island 

Mulli Business Computer Systems 

Portland 

Connecticut 

203 342 2747 



South Carolina 

M. A. G, 

Athens 

Georgia 

404 353 8090 

South Dakota 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

Tennessee 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

Texas 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8066 

Utah 

Gerald Hasty & Co. 

Las Vegas 

Nevada 

702 737 5670 

Vermont 

Best Business Equipment 

Worcester 

Massachusetts 

617 755 1077 

Virginia 

Professional Micro Services 

Baltimore 

Maryland 

301 325 5725 

Washington State 

Computer Sales & Service 

Moses Lake 

509 765 9751 

Washington D.C. 

Professional Micro Services 

Baltimore 

Maryland 

301 325 5725 

West Virginia 

Professional Micro Services 

Baltimore 

Maryland 

301 325 5725 

Wisconsin 

Cambridge Business Systems 

Chicago 

Illinois 

312 525 3900 

Wyoming 

Commonwealth Computer Inc. 

Overland Park 

Kansas 

913 648 8086 

Canada 

Canadian Micro Distributors 

Milton 

Ontario 

416 878 7277 



PET/CBM 



Precision 
Software 




• windows and margins may be defined for 
fj//PETs. 

• use of all cursor and edit keys. 

• all characters permitted, except the double 
quote mark (the double quote mark is dis- 
abled). The colon and comma are permitted. 

• TAB function can be simulated without a 
TAB key. 

• blinking cursor (without footprints). 

• normal or special use of every key. 

Program 1: Kernel Of screen Editor 

90 PRINT HOME?; : REM *HOHE?= CHR$(19) 

100 P=PEEK(196)*256+PEEK(197)+POS(0) : IF PC 

S(0)=HB THEN PRINT BELL$ ; : REM *B 

ELL$=CHR$(7) 
110 CH= PEEK(P) : K= 128 
120 POKE P, CH+K: T= TIME+ 30 
130 IP TIME> T THEN K= 128-K: GOTO 120 
140 GET Z? : IF ZS= "" OR Z$= QT$ THEN 130 

: REM *QT5= CHR$ (34) 
200 POKE P, CH; PRINT Z$ ; ESC?; : GOTO 100 

The Kernel Routine 

Program 1 is the kernel of a screen editor. I use 
this in any program that involves extensive input. 
So far, that includes a text editor, a mailing list 
program, an assembler-editor, and a sales account 
program. 

Lines 

90 Puts cursor in top left cornur. Not mand.itory. 

100 p is ttie location in screen RAM of the cursor. If the 
cursor lias. idvanced to the margin minus 4 (mb), 
then tlie bell rings. 

110 ch is the screen character at location p. 
120-130 The automatic cursor, once a second, alternates the 
character iit the position it is over with the character 
in reverse video. This can be done manually. 
Adding 1 28 to the screen code results in the reverse 
video character. The variable kchanges its value 
every 30 jiffies (1/2 second) fromO to 128, providing 
a simulatiim of the cursor. (It is assumed that there 
are originally n<-> reverse videocharacters on the 
screen. If there are, change line 1 10 to: ch = 
peek(p): kc= 128:if ch> kcthen kc= -kc: k = 0, and 
change line 130 to: if time> t then K= kc-k: goto 120.) 

140 The wait loop illustrated above, with one dif- 
ference: the double quote mark is disabled so that 
later the program can take data off the screen using 
the INPUT statement. 
150 - 190 This is where all sorts of special work can be done. 

200 Puts the characterinto its original video mode and 
prints the new character. The program prints the 
invisible cliaracter, escS, to avoid insert mode, and 
(CBM 8000 only) to prevent the user from breaking 
the window through successive HOME'S, for 
Upgrade RO.M PETs, use POKE 205, 0. For Original 
PETs, use POKE 234,0. 

Some Applications 

Here are four examples of how to use this control 
of keyboard and screen. The line numbers given 
replace or add to the lines in Program 1. 

180 COMPUJE MovlflSS 



1. To set a bottom margin and prevent scrol- 
ling. When accepting lines by the screenful, 
it is inconvenient to have hues scroll off the 
top of the screen. It takes special program- 
ming not to lose that data. To avoid that, I 
allow the user to work on only what can fit 
on the screen, and I do not permit any lines 
to scroll up. Lines 200-210 work because a p 
value greater than 34687 means that the cursor 
is on the last line. 

200 POKE P,CH: IF P>34687 THEN IF Z$=CRS 
R Z5=CD? THEN 100 : REM 34687=327 
68+80*24-1 

210 PRINT Z$; ESC?; : GOTO 120 

(cr$ = chr$(13) = car. return, 
cdS = chrSd?) — cursor down) 

This kind of bottom margin that prevents 
scrolling is different from the CBM 8000 Set 
Bottom command, which allows scrolling. 

2. To set a top margin (must be used with 
bottom margin to prevent scrolling). The PET 
stores the row number (0-24) of the cursor at 
meniory location 216. "tmargin" is the 
number of the top row of the margin. 

105 IF PEEK(216) < TMARGIN THEN PRINT : GO 
TO 100 

3. To set a left margin. 

106 IF POS(0) < LMARGIN THEN TAB(LMARGIN - 

1); : GOTO 100 

4. To set a right margin. 

115 IF POSC0) < RMARGIN then PRINT CHR?(15 
7 ) ; : Z?= CR? : GOTO 200 

(chrS(157) is cursor left.) 

To develop special key functions, use IF state- 
ments. For example, the backslash (\ ) key is sel- 
dom used. It could be defined to print an often- 
used phrase, such as the name of your company. 

150 : IF Z?= "\" THEN Z?= "ACME SOFTWARE, ~ 
I^NC": GOTO 200 

In this way the TAB kev for PETs can be simu- 
lated. Here we will use the RVS key for a TAB 
key. Tabs are at 5, 10, 20, and 30. 

Given: dim lb(4>: lb(0) = 4: tb(l) = 9: tb(2) = 19: 
lb(3) = 29:tb(4)=40 

150 IF Z$<> CHR9(18) then 200 

160 X= -1 

170 X= X+l! IF POS(0)> TB(X) then 170 

180 POKE P, CH: PRINT TAB(TB(X))f: GOTO 100 



Adding Control And Function Keys 

The most powerful use of this feature is the im- 
plementation of two-kev sequences, with the first 
key acting like a control or SHIFT key. If desired. 



Bf^TTERkES 
knCLUDED 



village by the grange, 71 mccaul st. (f6) toronto m5t 2x1 telephone 596-1405 

ARBITER 1 .4 MULTI-USER DISK SYSTEM FOR COMMODORE 4.0 COMPUTERS 

OVER THREE HUNDRED IN USE ACROSS ONTARIO 
Since September 1981 BATTERIES INCLUDED has been installing the ARBITER system in classrooms of Commodore BASIC 4.0 
computers. The computers are connected to GBM Disk Drives and printers. All users have access to all diskdrives and pnnters plus a host of 
commands to make this system configuration really usable! 

THE ARBITER 1 4 SYSTEM IS READY TO GO! 
FEATURES 

1) Easy installation ^^ ^^ ^^ f\f\ 

2) Uses no RAM or Utility Sockets. ] SHI C^^lvO 

3) Up to 32 computers in one system. 1 ^bI J 

4) System self initializes on power up. ■ %^ ^^ P©!" Unit 

5) Operation is completely transparent to the user. 

6) Extended commands allow a friendly multi-user environment. 

7) System design virtually eliminates interleaved printer output. 
SPECIAL COMMANDS 

fii S - Allows students to protect files with a five character password. A three character user ID is forced into the file name. 

Ill L- Allows the students to load protected files if the password code is known. 

LISTC-Used to produce program listings with a Commodore pnnter. Clumsy OPEN. CMD. LIST. PRINT*'. CLOSE sequence not needed. It over- 
comes the listing problems found on other multi-user hardware systems. 

LISTP-Lsed to get program listings on systems which have an ASCII printer. The cursor control characters are expanded and displayed in brackets, 
e.g. <hQme> 

ALL FILE TYPES ARE SUPPORTED - During relative or sequential file access a delay has been built in so the computer will retain control ol the system 

until the file is closed. 

TEACHER UTILITY -A utility is supplied on disk to allow the teacher to produce a hardcopy listing and output from any of the protected or unprotected 

files selected. Once the tiles are chosen from the disk directory the teacher may do other tasks while the jOb is completed 

IF YOUR CLASSROOfJl WAS DESIGNED TO TEACH COMPUTER LITERACY OR 

STRUCTURED BASIC THEN THIS SYSTEM WAS DESIGNED FOR YOU. 

Arbiter and Arbiter 1 .4 are copyrights of Balteries Included. 



COMMODORE USERS 

Join the largest, active Commodore 
users group in North America and get— 

— Accesstoclub library of over 
3000 free programs. 

— Informative club newsletter. 

— The latest information about 
the PET, CBM, VIC, Super- 
PET and Commodore-64. 

Send $20.00 ($30.00 overseas) for 
Associate Membership to: 

Toronto Pet Users Group 

Department "S" 

P.O. Box 100, Station 'S' 

Toronto, Ontario, Canada M5M 4L6 



I FOR YOUR CBM 4032, 8032, 
S 8096 OR COMMODORE 64 



PROOFREADING 

SOFTWARE 

NOW A 50,000 WORD DICTIONARY ^km- 

Now you can rapidly •JimJnate misspellings from your word 
processing text. Spellmaster (TM) is delivered with a 35,000 
word dictionary, allowing the user fo add up to 15,000 words 
(CBM 8050 version). Direct Screen Editing of Mistakes. Words 
"suspected" to be incorrect are displayed 'reverse video ' on the 
screen; simply correct the mistakes and resave your corrected file. 
Add Words to Dictionary with a Single Keystroke! Spellmaster 
makes it easy to Permonently Add any correctly spelled work in your 
text to your User Dictionary. 100% Machine Language Speed 
allows a large word processor textfile to be Proofread in 2 minutes or 
less. Uses dictionary of LITERAL WORDS, not imprecise rootword 
approach. Specialized medical and 
legal dictionaries are available. 
Menu-Driven and User Friendly. 
Compatible with Commodore 1541, 
2040, 4040 and 8050 Disc Drives. 



"HIGHLY 
RECOMMENDED" 

Jim StrosmQ — 
Micro Magoiine Dec. '82 

"SPELLMASTER IS AN 

EXCELLENT MACHINE 

LANGUAGE PROGRAM' 

I Robert Baker — 
Micro Computing Magozine 
i Jon. -83 



Jh 



^0^ SPECIAL 



CBM 64 

VERSION 



spemWaster 




May 1983 COMPVH! 181 



every key can be given an additional meaning. 
The CBM 8000 offers many special editing features 
that do not correspond to a single key. 

I designated one key, the backslash, as a con- 
trol key. (This special key can be any one of your 
choosing. The keys are all soft now. If you are 
using Charles Brannon's Kevprint utility, change 
the definition of B$ below.) Certain keys after a 
backslash were given new functions. If the keys 
are not preceded by a backslash, they operate 
normally. The four special edit functions I im- 
plemented are: delete line (\DEL), insert line {\ 
INST), erase end (\CRSR right), and erase begin 
(\ CRSR left). Given: BS = " \ " 

150 IF ZS <> B$ THEN 200 

155 POKE P, CH+ 128: REM REVKRSB CHAR SO U 

SER KNOWS PROGRAM WAITtNG FOR tlEX 

T KEY 
160 GET Z? : IF Z?= "" THEN 160 
170 IF Z5= CHR?(148) THEN Z$= CHR5(149): G 

OTO 200 
175 IF Z?= CHR?C20) THEN Z5= CHR5(21): GOT 

200 
180 IF Z?= CHR5(29) then 2?= CHR5(22): GOT 

200 
185 IF Z?= CHR$(157) THEN ZS= CHRS{150); G 

OTO 200 
190 Z$= "" : REM INVALID KEY HIT; IGNORE B 

ACKSLASH 

Another use of this feature allows vou to 
define the keys to have certain string values. In a 
mailing list program, 1 allowed the user to define 
up to four keys. The user (in my area) might define 
them: 

\in = "Mr. and Mrs. " 
\d = "Dr. and Mrs. " 
\p = "Philadelphia PA 191" 
\n = "New York NY 100" 

Both the keys used and the strings assigned are 
changeable. 

Accepting Data From The Screen 

The PET has a feature that makes accepting a 
screenful of data possible: an addressable 
keyboard buffer. Here is how the screen can be ac- 
cepted: 

Given: dim a$(24) 

Given: inS=chr$(148) H- ql$ + esc$ + chr$(157H-chrS 
(148) + chr$(148) 

chrS(148» is the insert key; chr$(157) is the cursor left. 
(Due to the use of esc$, PET <4.0 may have to use a 
POKE statement to gel out of quote mode.) 

Importanl restriction: The maximum length of the 
hne is three less than the screen width; for ex- 
ample, 80 -3 = 77. This can be enforced by using 
either a left or right margin (explained above). 
Here's the program to accept the screen: 

400 PRINT HOME?; HOME? : FOR 1=1 TO 10: GE 

T Z?: NEXT I : REM EMPTY BUFFER 
410 FOR 1= TO 24 



420 : POKE 623, 13: POKE 158, 1 
430 : PRINT IN$; : INPUT A? ( I ) 
440 : NEXT I 

The whole screen is now in aS array. One 
other restriction: it is important that no key be 
struck during the few seconds required to accept 
the screen. 

The screen is altered after in$ is printed. This 
is not important if the next action, for example, is 
to print the menu. If it is important, all traces can 
be erased by printing deletes. But then only 24 
lines at a time can be taken in: the top 24 for other 
than CBM 8000, or the bottom 24 with CBM 8000 
and the use of the scroll down command. This is 
because a carriage return will be executed after 
the last INPUT command. If the bottom screen 
line is INPUT, then when the carriage return is 
executed, the line will scroll up. I take only 24 
lines at a time anyway, in order to use the top line 
for instructions and messages. 

Speed: The routine in Program 2 is very fast. 
It will accept typing at the rate of 1 10 words a 
minute. Three things are done to attain this speed. 
All constants are replaced by variables. The vari- 
ables used most often are the first defined. And 
the routine is written into the first lines t)f the 
program. 

Program 2 is an example configuration for a 
CBM 8000. Lines 100-220 are the GET routine. 
Lines 300-420 are for the programmer to define 
his special functions. After a double backslash 
( \\), the data on the screen is accepted into aS 
array in lines 500-660. The top line is used for 
messages. A **\\ appears in the top right corner 
when \\ is hit so that the user knows another 
keystroke is needed. The text data is displayed in 
screen pages of 24 lines each. The routine corrects 
for the insertions and deletions of lines. The screen 
will not scroll. Lines 1000-1100 define the variables 
and constants (order is important). Lines 2000- 
2200 are the beginning of a main program. 

Since the strings in the a$ array may contain 
commas and colons, the strings must be enclosed 
in quotes to save on tape. Also the a$ array may 
contain null strings. The PET cannot read a null 
string from tape. Therefore, use the following for 
reading and writing: 

100 FOR 1= TO LAST 

110 PRINT#1, QT$; CHR${32); A5(l)r QT? ; C 

R$; : NEXT I :REM ';CR?r' IS FOR 

< 4.0 ONLY 
200 FOR 1= TO LAST 
210 INPUTtl, Z$: A?(I)= HID?(Z$,2) : NEXT 

I 

( chr$(32) may be almost any character, since it is 
discarded upon reading.) 

Program 2: Example screen Input Routine 

10 REM***** EXAMPLE SCREEN INPUT ROUTINE 



182 COMWH! Mav1983 



20 GOTO 1000 

30 : 

100 REM** GET ROUTIME 

110 PRINT ESC$, HOME?; : DL= 0: IN= 

120 P= PEEK(PH)*SB+ PEEK(PL)+ POS{0); IF P 

OS(0)= MB THEN PRINT BELL$ r 
130 CH= PEEK(P): KC= KD: K= KC: IF CH>= KC 

THEN KC= -KC: K= 
140 POKE P, CH+K: T= TIME+ THIRTY 
150 IF TIME> T THEN K= KC-K: GOTO 143 
160 GET Z$: IF Z?= "" OR Z$= QT$ THEN 150 

170 IF Z5= as? THEN 300 

180 : : : 

190 : : : 

200 POKE P, CH: IF P> LROW THEN IF Z$= CR? 

OR 25= CD? THEN 120 

210 PRINT Z$; ESC$ r : GOTO 120 

2 20 : 

300 REM** SPECIAL, FUNCTIONS 

310 POKE V, 42: POKE V+1, 42: POKE V+3 , 

28 :REM DISPLAY ** \ 
320 POKE P, CH+KC: Z$= "" :REM INVERSE 

CHARACTER 
330 GET X5: IF X$= "" THEN 330 
340 IF X?= "M" THEN Z5= "MR. AND MRS. ": 

GOTO 400 
350 IF XS= "P" THEN Z$= "PHILADELPHIA PA 1 

91": GOTO 400 
360 IF XS= CHR$(20) THEN Z5= CHR?(2l): DL= 
DL+1: GOTO 400 :REM DELETE LINE 

370 IF X;$<> CHRS(14a) THEN 400 : REM INSE 

RT LINE 
380 Z$= CHR$(149): IF DL= THEN IK= IN+ ~ 

1 : GOTO 400 

3 90 DL= DL- 1 :REM EXCESS DL'S SO ROOM 

FOR INSERT 
395 : 
400 FOR 1= V TO V+3: POKE I, 32: NEXT I ~ 

:REM CLEAR ** \ 
410 IF X$<> BS$ THEN 200 
420 : 

500 REM** ACCEPT SCREEN 
510 POKE P, CH: PRINT HOME? r HOME? : REM 

BREAK WINDOW 
520 REM* INSERT LINES IP NECESSARY 
530 IF IN= THEN 550 
540 FOR 1= 24*10-IN TO PG+24-IN STEP -1: A 

$(I+IN)= A?(I) : NEXT I 
550 FOR 1= TO 23 :REM ACCEPT SCREEN H 

ERE 
560 : POKE 623, 13: POKE 158, 1 
570 : PRINT IN?r : INPUT A?(PG+l) 
580 : PRINT DEL? 
590 : NEXT I 
595 PRINT HOME?; CHR?(153); : REM SCROLL 

DOWN 
600 REM* SQUEEZE TOGETHER IF NECESSARY 
610 IF DL= THEN 640 
620 FOR 1= PG+24 TO 10*24: A?(l-DL)= A? ( I ) 

: NEXT :REM SHIFT LEFT 
630 FOR 1= 10*24-DL TO 10*24: A?(l)= "": N 

EXT :REM CLEAR DUP ' D LINES 
640 RETURN 

650 REM** END ROUTINE 
660 : 
1000 REM*** IMPORTANT CONSTANTS AND VARIAB 

LES, IN ORDER 
1010 Z?="": P=0: CH=0: K=0: T=0 : THIRTY= 30 

: KC=0: KD= 128 
1020 PH= 197: PL= 196: 88= 256: MB= 74 
1030 QT?= CHR?(34): BS$= CHR$(92): ESC?= CH 

R?(27) 



1040 LROW= 32768+ 24*80 -1 

1050 CR?= CHR?(13): CD?= CHR?(17): X?="" 

1060 IN$= CHR?(148)+ QT?+ ESG$+ CHR?(157)+ 

CHR?(14B)+ CHR?(l4a) 
1070 DEL?= CHR?(145)+ " "+ CHR9(20)+ CHR? 

(20)+ CHR?(20) 
1080 V= 32768+ 75: DIM A?(10*24) : REM 1 

PAGES OF 24 LINES EACH 
1090 HOME?= CHR? (19): CLS?= CHR? (147): CU 

?= CHR? (145): LC?= CHR? (157) 
1100 : 

2000 REM**** MAIN PROGRAM 
2010 PRINT HOME?; HOME?; CLS? : POKE 59468, 

14 :REM SET TEXT MODE 
2020 PRINT,, "SCREEN INPUT PROGRAM" 
2030 PRINT,, " BY CRAIG DISSTON" : PRINT: 

PRINT 
2040 PRINT "ENTER THE PAGE NUMBER OF TEXT T 

ENTER OR EDIT"; 
2050 PRINT " 0"; LC?; LC? ; LC? ; : INPUT P 

AGE 
2060 IF PAGE< 1 OR PAGE> 10 THEN 2040 
2070 PRINT CLS? 
2080 PG= (PAGE-1)*24 +1 
2090 FOR 1= PG TO PG+ 22 
2100 : PRINT A? (l) 
2110 : NEXT I 
2130 PRINT HOME?; "ENTER TEXT FOR PAGE"; PA 

GE; LC?; ":" 
2140 PRINT CHR? (15) :REM SET TOP MARGIN 
2150 : 

2 160 GOSUB 100 
2170 : 

2180 GOTO 2000 
2190 REM***** "END PROGRAM." Q 



Micro Power Bench™ 




DEALER 
INQUIfllESINVlTEC 



• Single Switch Control of CPU and Peripherals 

• Built in circuit breaker protects your system 

• Four power expansion outlets 

• Opt. Power Surge (S40), Opt. Cooling Fan ($40) 

• IBM, Apple. TRS, Atari, Commodore, Others 

Dealer & Ordering Info 
800-343-431 1 

5HiDD nc] A H.inniin!i Cn-^rni^s .Itiairion,!! 

CAB-TEK,Inc. 

Riverside SI.. Nashua NH 03062 

DESKTOP ACOUSTIC 

SILENCERS FOR 

ALL POPULAR PRINTERS 

S99.To$199. 




May 1983 COMPUTE! 183 



VICSTATION: 

A "Paperless Office" 



Joel Peter Anderson 



Don't neglect your VIC when you have paperwork to 

do. With this program, you can create, review, and edit 
text files - bringing you one step closer to a paperless 
office. Along loith VICSTATION are two application 
programs that can use the files created by VlC's Line/ 
Pro. Also, there are some ideas on using the VIC as a 
smart terminal for telecommunications. 



Why did you buy your VIC? Maybe you saw it as 
a "smart" game machine, or perhaps as an educa- 
tional tool - or you could have seen it as an inex- 
pensive way to get into word processing. What- 
ever the reason, you've no doubt learned that the 
VIC can do quite a lot, probably more than you 
ever expected! 

I have a friend who owns a computer with 
more memory than mine. He had bought a word 
processing program to use on his system and was 
describing how it worked. 

"But you haven't got a printer," I pointed 
out, "what good is a program like that?" 

He explained that it was very good indeed. 
Even if he had to type his final copy by hand, the 
word processor could be used very effectively to 
produce the rough draft. 

That was something I had never thought of 
before. I wasn't planning on expanding mv system 
for a long time, but I had a good electric typewriter 
-couldn't 1 come up with some way to have my 
VIC work up the rough drafts? Besides that, maybe 
some things could just as well be written and saved 
as tape files. 

I came up with the program presented here - 
a line editor that can create, review, and edit text 
files - a start on a "paperless" office. Along with 
the editor, I've included two application programs 
which can use the files created by VIC's Line/Pro. 

Program 1 is all you need to get started. 

184 COMPUIF! Mav19B3 



RUNning the program will give you a display 
LINE/PRO and a list of reserved words. These are 
very important (more about these in a minute). 

To begin using the editor, hit any key. The 
screen will clear, and a green cursor will flash in 
the upper left corner. Type a line, hit RETURN, 
and the line will appear as blue text in the lower 
portion of the screen about four lines down front 
the top. As you continue to type, each line (up to 
88 characters) will appear below the text already 
entered. As you will see when you have more 
than a screen of information, the entire -text en- 
tered scrolls past after each line. If you want to 
quickly review what you've written, press the 
CTRL key to slow it down. 

Two cautions; Input is through a special 
INPUT# statement, so if you want to include 
commas or colons, you have to enclose the entire 
line in double quotes. And obviously you can't 
use double quotes in your text. I usually use two 
apostrophes. 

The reserved words are invoked by entering 
each word in lowercase alone, as input. If you 
want to have that word as part of the text all by 
itself, enter it as "read" (enclosed in double 
quotes, with an extra space following). The pro- 
gram will see it as five characters long and ignore 
it. Any line beginning with a reserve word, such 
as "reading is a pleasure," will not be picked up. 
The same trick is used to indent text - " text" 
indents the word "text" three spaces. The follow- 
ing reserve words pass control temporarily to 
special subroutines: 

SAVE 

This is used to put your current text onto tape. A 
corresponding routine, BYBY, is always used 
following one or more SAVEs. Although it is op- 
tional, when SAVEing, a file name is requested 



"■■<Qii]PU 5E[\i5Ei:/ 



VIC-20® 

VIC-20* Personal Computer S169.9S 

VIC-1515 Printer 334.95 

VIC-1530 Datasetle 67.50 

VIC-1541 OI$k Driwe 375.00 

VIC- 1010 Enpansion Module 139.95 

VIC- 1311 Joystick 9.95 

VIC-1312 Game Patfdies 19.95 

VIC-1600 Telephone Modem 99.95 

VIC-1210 VIC 3K Memory Expander Cartridge 34.95 

Plugs directly mio the ViC's expansion port Expands to BK RAM lotai 

VtC-1110 VIC 8K Memory Expander Cartridge 52.50 

8K RAM expansion can^iage plugs direciJy inio the VIC 
CM101 VIC 16K Memory Expander Cartridge 99 95 

CMt02 24K Memory Expander Cartridge 1 13.95 

VIC'1011 A RS232C Terminal Interlace 39.95 

Provides Lfiierface between the VJC-20 and RS?32 lelecommunicatians madems 
Connects to \l\C'^ USfir pOrl 

PETSPEED - Basic Compiler tor Commodore 130.00 

Compile any Pet Basic progfam The only oplfmizinq compiler Programs compiled 
wiih Peispeea run up lo -40 iimes lasiet Petspeto code ss gnlisiabie jna campiled 
programs cannoi De lampeied with No security device required tor compiled pro- 
gfjm-s AvJl^aDle NOW 'of ine Commodore 6A 

Star Geminf 10 Printer Call tor price 

Star Gemini 15 Printer Call tor price 

SMO Monitor Call tor price 

CARDBOARD 6 S37 95 

An expansion interface for tiie VlC-20 Allows expansion to 40K or accepts up 10 ^i« 

games May be daisy ctiamed lor rnote vecsatitiiy 

CARDBOARD 3 S39 95 

Economy expansion interface for the VIC-2C1 

CARD '?" CARD/PRINT $79 95 

Universal Centronics Parallel Printer interface 'or the VIG-20 or CBM 64 Use an 

Epson MX-60or OKlDATAor TANDY or just about any other 

CARDETTE £39.95 

Use any standard cassette player/recorder witti your VIC-20 or CBM-64 

LIGHT PEN S29.95 

A light pen wilh six good progfams to use with your VIC-20 at CBM-64 



HOME & BUSINESS PROGRAMS For VIC-20 & C-64 

CW-107A Home Calculation Program Pack $48.95 

CPV-31 Data Files - your storage is unlimited 14,95 
CPV-96 Household Finance Package - to keep records ot all 30.95 

your househottl expenses 

CPV-208 Bar-Chart - display your numerical data 8.95 

CH Turtle Graphics - team programming 34.95 

CH VIC FOrlh - is a powerlul language lor BASIC programming 49.95 

CH HES MON - IS a 6502 machine language monitor witn 34.95 

a mini-assembler 

CH HES Writer - time-saving wor<! processing tool 34.95 

CH Encoder - keep your personal records away from prying eyes 34.95 

CT-21 SlatiSliCS SadlStlCS - stalislical analysis 14.95 

CT-121 Total Time Manager 2.0- creates personal or 15.95 

business sctieduies 

CT-124 Toll Lal>el - a mailing list and label program 13.95 

CT-125 Tot! Text BASIC 15.95 

CT-126 Research Assistant - keep track 01 reference data 17.50 

CT-140 TotI Text Enhanced 29.95 

GM-1S2 Grafix Designer- design graphic characters 12.95 

CQ-5 Minimon - allows you to program, toad. save, or execute 13.95 

machine language programs 

CT-3 Order Tracker 15.95 

CT-4 Business Inventory • to maintain record oi inventory 15.95 

OS Home Inventory - lists your home belongings 17.95 

CS Check Minder - |V-20 & 64) 14^95 

keep your checkbook the right way 

General Ledger - a complete general ledger 19.95 

HES Writer - wora processor 39.95 
Turtle Graphics M - unines the tuii graphics ot your 64 49,95 



CS 

CHC-504 

CHC-503 

CHC-502 

CHP-102 

CFC 

CPV-327 



HESMON - machine language monitor w mini-assembler 34.95 



6S02 Professional Development System 29.95 

Data Flies - a management program 27.95 

HESCOM - transfers data and programs biljirection- 40.95 

ally between VICs at three times the speed of a disk dnve 

CPV-328 HESCOUNT- monitors program eieculion 19.95 

CHV HESPLOT- Hi-res graphics subroutines 12.95 

CPV-367 Conversions - figures, volume, length, weigh!, area, 7.95 

and velocity to all possible contigurations 

CC The Mail - your complete mail program Cassette 24.95 

Disk 29.95 

CPV-220 Client Tickler 16.95 

CPV-221 Club Lister 13.95 

CPV-224 Deprecialor 9.95 

CPV-236 Investment Analyst - keep track 01 investments 12.95 
and investment opportunitites 

CPV-251 Present Value 10.95 

CPV-269 Super Broker 12,95 

CPV-270 Syndicator- calculates whether to buy or sell 13.95 

CPV-274 Ticker Tape - maintains investments prolile 14.95 

CPV-276 Un-Word Processor - screen editor 16.95 

CPV-286 Phone Directory - never lose a phone number again 9,95 

CS-111 Checkbook- home- oitiiiy' program 14,95 

CPV-294 Calendar My Appointments - prmi a caier^oar 14.95 

lor every month in any year 

CPV-296 The Budgeter - place your personal finances in order 12.95 



CSl 



QUICK BROWN FOX 

The Word Processor of this decade' 



S60.50 



VIC-1211A 



COMMODORE SOFTWARE 

ViC-20 Super Expander 



S57.99 



Everything Commodore could pack inTO one cartridge -3K RAM memory ekpansion 
high resolution graphics plQlIing, color, paint and sound commands jraphjc te«t. 
multicolor and music modes T02ilii1024 dot screen plotting All commands may be 
typed as new BASIC commands cr accessed Dy hitting one of the yiCs special 
lunction keys Includes tutorial instruction book Bxcellerl lor atl programming levels 
\/IC-1212 Programmer's Aid Cartridge S45.99 

kiore than 20 new BASIC commands help new and experienced programmers 
renumber trace and edit BASIC programs Trace any program line-by-lme as it 
executes, pause to edit special key command lets programmers redefine function 

keys as BASIC commands subroutines or new commands 

VIC-1213 VICMON Machine Language Monitor 548 99 

Helps machine code progfammers write fast elticient 650? assembly language 
pfograjns incJuOes one ime assembler disassembler 



NEW GAMES FOR YOUR VIC-20® 

CC58 ASlrObiltZ - Tmsgime IS challenging I ven to J S39.95 

VIC- WASTE Ri Navigateyour ship carefully 10 avoid being mt by enemy lire 

CC60 Terraguard - ^peediind careful skill will enable you to 39.95 

once again oestioy 'he aliens loo siowii You're destroyed oy iheir beam 

CC98 Serpentine - This game will lest your ratience 4 39.95 

i-kili Object - 'o survive long enough -o lay eggs and raise your voung 

CC500 Intruder-Scrambler- in vooroomber, .nvade the 19,95 

defending scramble system dodging rockets lo blow up enemy posts etc 

GC101 Chopllfter - 'lescue I hi! American hostages i return 39.95 

:hem safely lo ihe 11 S You wilt encounter tanks, lels and killer satellites 

CC102 Black Hole - Your mission IS, simply losurvivei Vour 39.95 

■jhip must not re riii O'/ space objects oi tucked mio the Black Holei 

CC104 Apple Panic - Speed is requiredi Oeslroy the 39,95 

.'ipple n^onsters tiy digging holes m the brick floors tor ihem to tall into 

CC65 video Mania - Introducing your enemies EVIL EYE, 39 95 

WALWOKER, KILLERBOX Your only ctelense - throw your alien 2apperi 

CSl Flags Ot Nations - A game that challenges players 10.95 

lo Identity flags orvarious widely-known nations of the world 

CS2 Flags of Nations - Second Edition - A field of 10,95 

'iA Hags ot lesseir known nations ut ihe world 

CS3 Cities and States - A game that draws a map of 10,95 

a stale or stales and asks players lo name key cities m those states 

CS4 Cllles Of the World- Deals with important 10,95 

cities of nations throughout the world 

CS5 Mountains and Rivers - Draws large geographical 10 95 

area maps You identify major moiintam ranges, rivers & bodies of water 

NEW GAMES FOR YOUR 0-64 

Tank Arcade (Also tor VIC-20) - Pre-delermme haw many hits $13.95 
it will lake lo wipe out your opponent Then, on with the battle' Battlelietd changes 
Roadracer - Ctioose the type o! tracks a time or tap race Use 13.95 

steady control ai speeds ol 50 to 2CX1 miles per hour Hit the wall & lose valuable time 
Shootout at the OK Galaxy (Also for VIC-20) - so alien 19.95 

warshipstta^^eeniiered your war zone Shields up'^ Energy level OK ''Defend yourself 
Galaxy - Have you ever wanted lo conquer the universe'' Send 19,95 

your galactic fleets oul to explore, solar system by solar system From 1 to 20 players 
Bomber Attack - Ground to air warfare You re in corr^mand 14,95 

ol a Supersonic bomber over enemy terrain Drop alt 25 bombs on hey locations 
Midway Campaign - Your compuler controls a huge force of 19,95 

Japanese ships trying to conquer Midway Island Your only advantage is surprise 
Omleper River Line • a fjcttonai-ied engagement oetween Russian 25.00 
& German f oices m 1943. Soviet forces, controlled by the computer, seek to overrun 
your line and captui-e sufficient objectives to attain victory Four levels of diHicully 
TanktiCS - Armorea comoai on the Eastern fj-orii of WWII You 24.50 

start outnumbered 2 to 1 Dui you choose your tank types before the battle 
Guns of Fort Defiance - you arc the commander of a 19th artillery 20.00 
piece in n besieged fort Choose type of ammo Set the cannon's elevation. defiectJ on 

Computer Baseball Strategy - you. the manager of the 1 5.95 

home team, test you skill agamsta wily and unpredictable opponent, your computer 
Lords of Karma - Like an mtngumg puzzle' Deciptter secrets 20.00 

whii^e exploring a myinrcai. magical city & countryside Avotd the lurking monsters! 

North Alianlic Convoy Raider - it's the Bisrriarck convoy 19.95 

raid of t9iT The computer controls Ihe British ships Will you change history'' 
Planet Miners - Compete agamst others and the computer lo 1 9.95 

stake valuable mmmg claims throughout ihe solar system m me year 2050 
Conflict 2500 - in 2^00 ad, eartn is threatened by attacking 19.95 

aliens witrt an^ntmiie* of attack strategies with which to tease the defending player 
Nukewar - Nuclear confroniation between two hypothetical 19.95 

counines Defend your country with espionage, bombers, missiles, submartnes. etc 
Computer Acquire - New Second Edition' The object is to 2000 

become the wealthiest person in t his bus mess" game -hotel acquisitions & mergers 
Andromeda Conquest - Vas; scale space strategy game of 19.95 

galactic coiom^mg and conquest Strange life lorrris & atiien technologies - exciting' 
Telengard - Microcomputer Durigeon Adweniufe game Time 25.00 

Isntasy and role-playmg 50 levels ol ever-more complex mazes lo explore & survive' 

MORE — MORE — MORE 



Prices subject to change. 
TO ORDER: 
P Box 1B765 
Wtchita. KS6721B 
( 3 W) 263-1095 
Personaf checks accepted (Allow 3 weeks) 
or C. O. D. (Add $2) Handling charges S2.00 

VlC-20* IS a registered trademark of Commodore 



WRITE 

FOR 
FREE 


RR 


CATALOG 





and prompts are printed for the datasette. In a 
series of SAVEs, the file name is only requested 
the first time - when opening the file. When the 
text is saved, control returns to the main program, 
but now, there is no text in memory. If you don't 
want to add any more to the text file, type "byby". 
This closes the file and ends the program. 

If, on the other hand, you want to create a 
longer file, and there is no limit to the length of a 
tape file other than the length of the tape itself, 
then go back to entering text, editing it, and typing 
"save" again, as many times as you like. You very 
likely will wind up with a file longer than this 
program can handle - but more about that later. 

Important note: the closing subroutine 
"byby" prints the character "£" as an end-of-file 
marker, so you can't use that in your text. If you 
can't live without that character, change lines 310 
and 670 to use some other odd character. You'll 
also have to change the application programs 
because they expect the character "£" to end text 
files. 

EDIT 

The edit routine allows you to move line-by-line 
through your text - a handy way to review what 
you have written. You can page through a text as 
much as you want, and you can also change, in- 
sert, and delete anything on any line. This also 
uses an INPUT# statement, so the same caution 
as above applies. When you hit a line that needs 
changes, press F7 and change the line however 
you like as long as it doesn't become longer than 
88 characters. To get quickly to something at the 
end of a text, page backwards past the beginning 
and you will be at the end of the text (sorry, this 
doesn't work going forward - getting to the end 
exits the "edit" routine). 

READ 

This slowly displays the entire text in memory. 
To pause after any line, just hit the space bar; to 
resume, press it again. At the end of the text, the 
program will wait for you to hit the space bar to 
return to the main program. 

TAPE 

"What do I do with these tape files?" you may 
wonder. Well, by typing in "tape" you can reenter 
them into the program ~ for review, editing, to 
graft them onto another file - anything you want 
to do as long as you don't exceed the 50-line limit. 
Also, you cannot use it once SAVE has been 
invoked. 

By the way, if vou ever do get kicked out of 
the program, type "GOTOUO" to return to the 
main program. 

BYTE 

This last reserved word gives you a quick report 
of what line you're on and how many characters 

186 COMPUTE! May19S3 



remam m memory. 

FILE READER 

Program 2 is what you do when your files get too 
long for memory. The file reader will display a 
tape file on the screen, and pause for any key- 
strokes, except for Fl, which ends the program. 

When the end of a file is reached, the program 
goes into an infinite loop which ends either: 

• when you press Fl to terminate the ses- 
sion or 

• when you press F3 to search for the next 
file on the tape. 

DUMBTERM 

Program 3 is a modification of a program that 
appeared in the August 1982 issue of COMPUTE!, 
"VIC Communications: The RS-232 Interface." 
What I have done is add several features to 
smarten up this "dumb terminal." 

I noticed that several programs I used for 
terminals had features where special messages 
(passwords, i.d.'s, etc.) were often just printed 
directly to the RS-232 Interface without any trans- 
lation. As an experiment, I tried doing that with 
an INPUT# statement. What I got was a simple 
way to have a screen editor built into vour termi- 
nal. To use this, hit F3 - a red ? will appear, and 
the cursor will turn red. As long as you don't care 
about upper- or lowercase, this will give you the 
ability to move the cursor back within the text on 
your screen, modify it, and then send it back over 
the terminal. 

I have found this very handy for editing pro- 
grams. The host computers I use support a line- 
based text editor. Often I use the editor to first 
delete the line I'm changing (it prints it out for 
verification) and then modify it and send it back 
using the screen editor. Be careful to enclose any- 
thing using commas or colons within double 
quotes. 

The escape key (Fl) is simply a way to exit a 
line being entered. The control "c" (F7) is included 
because the host computers I use have that as an 
exit character in various programs. You can change 
it to whatever character your local mainframes 
require. Simply change the CHR$(3) in line 2000 
to CHR$(1) for "a" and so on. 

Finally, the "tape file" command (F2) will 
take any tape file and send it over the terminal. 
Like the screen editor, this command doesn't 
translate; it just sends the characters over, so forget 
upper- and lowercase. I know from experience 
that this only works well when you are using some 
sort of text mode during which all text received is 
appended to a current file. Also it is necessary to 
instruct the host computer to go to half mode - 
the program prints the text file on the screen 
during transmission. 



Presents Software and Hardware 
For 

B commodore 



VIC-64 

Call for our package price on the VIC-64 System 

VIC-20 



VIC 1212 Programmers 

Aid Cart 45,00 

VIC 1213 VICMON Machine 

Language Monitor 45.00 

VL 102 Introdution 

To Basic 21-00 

VIC 1600 VIC Modem . 92.00 
Kids S The VIC 17 95 



Cloud Bursl-C 


26 95 


Satellites & Meteorites-C 


34 95 


Outworld-C 


34 95 


Video Vermin-C 


34 96 


Skibbereen-C 


2B.95 


Grand Master-C 


28.95 


TRONIX 





VIC 1530 Dataselie 60,00 

VIC 1541 DiskDriue Call 

VIC 1625 VIC Graphic 

Primer 324 00 

VIC nil 16K Expander . .94.00 
VIC 1011 RS232 Terminal 

Interlace 43.00 

VIC 121 1 SuperExpander 53 00 

JOYSTICKS 

Starlighler 1295 Slik ShK 9,95 

Software for VIC 20 

We carry a complete line of Hardware and Software for the 
VIC-20, VIC-e4 and ATARI. Call for our tree catalog. 

VIC-20 

Avenger 23 95 

SuperSlot 23.95 

SuperAlien 23.95 

Jupiler Lander 23.95 

Midnight Dnve 23.95 

Radar Rat Race 23.95 

RaidonForl Knox 23.95 

Sargon 1 1 ZB.9S 

Super Smash 23.95 

Cosmic Cruncher 23.95 

Goif 28.95 

Omega Race 28.95 

MoneyWars 23.95 

Menagene 23.95 

Cosmic Jailbreak ,. .23.95 

Clowns 23.96 

SeaWoll 23.95 

Advenlureland 28.95 

Pirate Coue 28.95 

Mission Impossible 26.95 

TheCouni 28,95 

Vodoo Castle - - 28.95 

The Sky Is Falling 23-95 

Big Speed Math 23.95 

Home Babysiller 23-95 

Visible Solar System 23 95 

Personal Finance 28,95 

Toolh Invaders 23-95 

Star Post 23.95 



Galactic Bhtl-T 18 95 

Swarm-T 20 95 

Sidewinder 20.95 



HES 



UMI 

Sidersol Mars-C 34.95 

Meteor Run-C 34.95 

Amok-T 18.95 

Alien Blill-T 18.95 

Sky Main-T 12.95 

Soace Division-T 12,95 

Super Hangman-T 15.95 

Alien-T IB. 95 

3-D Maze-T 12.95 

Kosmic Kamikare-T 18.95 

Sub Chase-T 1 895 

Amok-C 28.95 

Alien Blitz 28.95 

Henaissance-C 3d. 95 



800-558-0003 



VlCTrek-T 14.95 

Simon-T 12 95 

Fuel Pirates-T - 12.95 

Concenlration-T 12 95 

Torg-T 14 95 

Raid on Islam.T-- tB-95 

HESGames-T 16,95 

VIC Forth-C 45.95 

Hesmon-C 28 95 

Tunie Qraphies-C 28,95 

Heswnter-C 28.95 

Aggressor-C 28.95 

Synthesound-C 48 95 

Shamos-C 28 95 

Protectoi-C 32 95 

Robot Pan)C-C ,,. 28 95 

Grid Hunnef-C 28,95 

MISCELLANEOUS 



Martian Raider-D 


15-95 


Shark Trap-D 


15 95 


Multi-Sound 




Synthesizer-D 


15 95 


Resuce at Rigel-T 


21.95 




,., 15.95 


Sword ol Fargol-T 


21,95 


Monster Maje-C 


2695 


Demon Attack-C 


.28.95 


River flescue-C 


- - 29.95 


VIC Music Composer-C - 


29.95 


Crossfire-T 


.2!. 95 






Turmotl-C 


29 95 


Deadly Duck-C 


2995 



In Wisconsin Call: 

414/351-2007 



Surchiarge for Credit Cards 
ORDER HOURS 



MASTERCARD/ 
VISA 

ORDERING INFORMATION 



Mon-Fri 
Sat 



12-9PM 
1 2-5 PM 



(CST) 
(CST) 



To order by mail, send money 
order, certified check, or person- 
al check (allow 1 4 days to clear) 
to COMPUTABILITY. Ini;lude 
$2,00 shipping on all software 
orders. Include 3% shipping on 
all hardware orders, minimum 
S2.S0, Mastercard and Visa 
please include card number and 



expiration dale Wl residents 
please add 5% sales lax. Out- 
side of Continental USA. please 
add 15^ shipping, minimum 
S5.00 (US Funds onlyl. Prices 
subject to change without notice. 

COMPUTABILITY 
P.O. Box 17882 
Milwaukee. Wl 53217 



COMPUTER 



5W*lWiV, 



ASSOCIATES 



-^: 

"Sensationol!" 
"Magniiicetit!" 
"Unbelievable!" 

PractiCalc 

A comporcttive _ 
newcomer to the software market, PractiCalc has al- 
ready elicited an overwhelming response. With 
PioctiCalc, features that were once only associated 
vrith much larger computers ore now available on the 
VIC-20 (with 16K Ram) and 64. PractiC ale's simple 
screen format allows easy entry and viewing of data, 
and its numerous mathematical functions allow for 
efficient solutions to the most advixaced user problems. 
Easy to operate, PractiCak offers an affordable alter- 
native to large costly home computers. 






^'-^J 



• Over 20 Mathematical 
Functions 

• Alpha/Numeric Sorting 

• Saves & Stores Spreadsheet 

• Available in both disc & 
cassette versions 



$39.95 

Order direct by colling 1-800-343-1078 



Computer Software Associates products come 
from around the world and are priced for exceptional 
value. We offer a complete selection of software to meet 
your most demanding needs. Ask your local retailer for a 
catalog of over sixty programs or write us directly for 
more information. 

CSA is searching lor programmers %vho are 
creating software ior Commodore (ind Timex. We oifei 
' '-wide distribution netwotk as well as generous 
royames. Contact us in care of the address below. 

Micro Software International, Inc. is the exclusive %vor Id- 
wide distributor of CSA products. 



Micro Software International, Inc. 

50 Teed Drive 
Randolph, MA 02368 

Abbots Mead, Framsden Road 

Pettaugh, Stowmarket, IP 14 6DU 

Suffolk, England 

DEALER INQUIRIES WELCOME 



Half Mode 

There is another reason for that last instruction. 
It's the reason this trick can work at all. 

To quote Butterfield and Law, in the article 
mentioned above, "You can't use the... cassette 
tape while the RS-232 is in gear." You shouldn't 
be able to send text via the modem from the cas- 
sette. I tried it and you can't - unless you tell the 
host computer to stop echoing your message. If 
you do that, your text will go over intact with 
perhaps a few glitches (it pays to check it). 

This feature has been very handy. When I 
am paying for my computer time, or doing school- 
work within a limited amount of computer time, I 
find it helps to begin writing a program on my 
home computer and then send it to the mainframe 
for editing and implementation. Also, the main- 
frames I use support a type of word processing. 
This means that a text created and edited with 
Line/Pro can be formatted and printed (on a 
printing terminal) in a nice final copy. 

The effectiveness of this may vary on systems 
other than the CDC Cyber I am familiar with. I 
think, though, that you will find this a simple but 
effective way to use your VIC to do some powerful 
things. 

Note: The character which appears as a backslash (\) 
in Programs 1-3 should be typed as the British pound 

symbol (£) on the VIC keyboard. 



Program 1: Line Editor 



{rev]line/pro" 
right}this line-pro 



OF 



10 PRINT" [clear] 

20 PRINT" {02 down) {02 

CESSOR" 
30 PRINT"WILL EDIT AND SAVE A SERIES 

LINES (NO LIMIT, HOWEVER ONLY ~ 
50 "; 

taken at a time) . " 
right}save{04 right)re 



40 
50 

60 

70 

80 

90 

100 

110 

120 

130 

140 

150 



print"lines are 

print" {down} [02 

AD" 
PRINT" [down] [02 

PE" 
PRINT" [down) [02 
PRINT" (down) {02 



right]edit{04 right}ta 

RIGHT iBYBY" 

rightIbyte" 



GETA?:IFA?=""THEN90 
DIMW? (50) 

PRINT" {clear! ";CHR5 (14) 
FORX=1TO104:B$=B$+" ":NEXTX 
OPEN1,0,0 
PRINT" {home] "; CHR? (30) ; B$ ; " {HOME J "; 

INPUT#1,A5 
160 PRINT" [BLU]"; : IFLENCa? )=0THEN140 
170 IFLEN(A?)=4THENGOSUB230 
180 IFLEN(A?)=0THEN140 
190 W$(l)=A$:PRINT"{02 DOWN) " 
200 PRINT" {clear} ";B?:FORX=0TOL:PRINTW$(X) 

: NEXTX 

L=L+1 :GOTO140 

REM CONTROL ROUTINE 

IFA$="EDIT"THENA$=" " : GOSUB490 

IFA$= "SAVE"THENA?= " " : GOSUB420 

IFA$="BYTE"THENA$="":GOSUB720 

IFA?="BYBY"THENA?="":GOSUB300 

IFA$="READ"THENA$="":GOSUB330 



210 
220 

230 
240 
2 50 
260 
270 



POKE36S79, 110; 
PRINT 



FOR 



THENGO 



: RETURN 



W$(G 



PAG 



280 IFA$="TAPE"THENA?="":GOSUB640 
290 PRINT" {clear} "; :RETURN 

300 remend of file 

310 PRINT#2,"{F1]\\\\" 
3 20 CLOSE2;END 
330 REM FILE REVIEW 
340 PRINT" [clear! EGRN] 

G=0TOL-1:FORX=1TOLEN(W5 (G) 

MID?(W$ (G),X,1); :NEXTX 
350 FOR D=1TO300:NEXT:GETR$ :IFR$=" 

SUB390 
360 PRINT :NEXTG 
370 GETR$:IFR$="" THEN 370 
380 POKE36879,27:PRINT" [clear! 
3 90 FORXX=1TO10:GETR?:NEXTXX 
400 GETR?:IF R?=""THEN400 
410 RETURN 

420 IFFL$="OPEN"THEN450 
430 FL$="OPEN": INPUT"TITLE";T? 
440 0PEN2, 1,1, T$ 
450 FORG=0TOL-1 
460 PRINT#2,W$Cg):W?(g)="" 
470 NEXTG:L=0 
480 RETURN 

490 REM EDIT ROUTINE 
500 INPUT"CLEAR IT ALL";R$ 
510 IF LEFT?(R$, 1)="Y"THENFORG=0TOL+1: 

) = " " : NEXT : L=0 : RETO RN 
520 PRINT" {clear} {04 DOWN] {rEV}f5 [OFF! 

E FORWARD {down! ": PRINT" [REV!f3[0F 

off] PAGE BACKWARD[DOWn} ":PRINT"{ 

rev}f7[off} input NEW line[down)" 



5 30 FORG=1TO1000:WEXTG: PRINT" {clear} " 
540 FORG=0TOL-1 

550 print" [home] ";CHR?(30);3$; "{hOME} "j 

560 PRINTW$ (G) ; " [home} "; 

570 GETRS:IFR5<> "{f7} "ANDR5<> "[F5} "ANDR$ <> 

"{F3}"THEN570 
580 IFR$="[F3} "ANDG=0THENG=L-1:GOTO550 
5 90 IFR$= " [ F3 } "ANDG < > 0THENG=G-1 : GOTO550 
600 IFR$="[F5}"THEN620 
610 INPUT#1,W$ (g) 

6 20 NEXTG 
6 30 RETURN 

640 REM TAPE INPUT 

6 50 INPUT" [clear] FILENAME" ; F$ : 0PEN2 , 1 , , F$ 

:PRINT"FILE OPEN, BOSS" 
660 FORX=LTO50 
670 GET#2,L$:IFL$="\"THEN L=X:PRINT"{ 

clear] " : CLOSE2 : RETURN 

6 80 IF L$=CHR?U3)THENNEXTX 
690 IFX>50THENCLOSE2:L=X: RETURN 
700 W?(X)=W$(X)+L$ 

710 GOTO670 

7 20 REM BYTES FREE 

730 PRINT" [clear] {02 DOWN} [02 RIGHT] {DOWN! 

BYTES FREE" 
740 PRINT"{04 RIGHT] {down] ";FRE(X):PRINT"{ 

down] [rev]line":L 

750 FORG=1TO1500 -.NEXTG: PRINT" {clear} "r 
7 60 RETURN 
770 END 

Program 2: File Reader 

20 REM VIC STATION - FILE READER 

30 PRINT"[CLEAR} "?CHR5(14) 

40 PRINT" {clear} {02 DOWN) [REV] [GRN] FI 

LE@READER {blU}[OFF]" 
50 PRINT"[03 DOWN]tHIS FILE READER WILL 

PEN A FILE ON TAPE" 



lea COMPUTI! May 1983 



COMMODORE 
SUPPORT HOUSE 



ONE STOP CENTER 
for 



C^ commodore 



DES-VILLE SOFTWARE 

division otDES Data Equipment Supplf Corp. 



BONZO (c) by Kavan 



HOPPER 




LASER COMMAND 



m 



ASTRO-MINERS 




One of the most popular games in 
Europe. You control Bonzo as tie 
climbs the ladders and picks up 
point blocks. Watch out tor the 
alien guards. Excellent graphics 
& sound. 100% mactiine code. 
Joystick or keyboard. 11K+. 
S20.00 



Rated a five star game by 
Creative Computing. Avoid the 
cars, buildings, logs and other 
obstacles to bring the frog home, 
fulachine language. Joystick. 5K. 
$20.00 



You are the commander of a 
squadron of laser ships. It is your 
duly to defend the cities of earth 
against incoming aiien attack. 
Spectacular graphics and 
machine code for super last ar- 
cade fun. Joystick. 5K. 
$20.00 



Pilot your craft to scoop up 
asteroids and fill your craft wilfi 
ore. Be careful of oversized or 
fast moving asteroids, they can 
destroy you. Don't take too long 
or you will run out of fuel. Get 
enough ore for another trip. Hi- 
res graphics & sound. Joystick & 
keyboard. 11K-r 

$i7.n) 



Lunar Command $16.00 

Descend in your lunar module. Rescue 
the astronauts on tJie surface. Walch 
out lor meteors racing across the sky, 
and bad terrain. Smooth graptlics. 
Joystick or keyboard. 5K. 

Snackin $20.00 

Very last. Hi-res graphics & sound. 
Four dilferenl mazes. Joystick or 
keyboard. 11K+ 

Star Dstandar $20.00 

Very last, Hi-res graphics & sound. Can 
you save your citizens from the aliens ? 
Joystick. 11K+. 

Slack Cattle $20.00 

Adventure ! Travel the countryside. You 
quest for magic rings that will open the 
doors to tho Black Castte. 1 -9 players. 
aK + . 

Boas (c) by Kavan $39.95 

Best computer chess on the market. 10 
levels, 2 clocks. Hi-res graphics. 100% 
machine code. 11K+. 



Pit (c) by Kavan $1S.ao 

Bonzo iS back again as he taites money 
out 01 ttie pit. Hi-res graphics i sound, 
100% machine code. Joystick or 
keyboard. 5K. 

Blockade by (c) Kavan $18.00 

Alien ships are attacking your ship. 
Destroy them with your laser blaster. 
Machine code. Keyboard. 5K. 

Vic Yahtzee S12.00 

Solitaire version of famous dice game. 
Requires skill & slrategy. 5K- 

3-D Labyrinth $1Z00 

Escape from the labyrinth shown in 3-D 
perspective. Keyboard. 5K. 

Race acroft* the tJ.S.A. $15.00 

Text racing adventure! Can you get 
across the U.S.A. 7 Keyboard. 8K+, 



Program Pack I $20.00 

Sub Killer - sink subs with depth 

charges. 

Alien Attack - breakout and destroy the 

city. 

Bombardier - leve[ a city with bombs 

from your plane. 

Mix-a-word - guess the mixed up 

words. 

Program Pack 11 $20.00 

Frustration - guess the shapes & se- 
quences. 

Fortune teller - ask the Vic questions. 
Code Practice - practice your Morse 
code. 

Old English character set - use in your 
programs. 

Star Command $1B,00 

by Martian Software 

Fast action 3-0. Shoot alien ships oul of 
the sky. Joystick. 5K. 



PAL ' Programmers Aids and Logs 
Contalna tiie following; 

• Border & Screen Full-Color Combinatin 
Rainbow 

• EZ-Key Quick guide to all keys and 
characters 

• EZ-Nole Sound music chart and 
worksheets 

• BASiC'ly EZ condensed basic dictionary 

• Create-a-Character programmable 
characters worksheets 

• EZ Screen tearout screen layout and 
design forms 

• EZ Graph graphics programming aid 

• Doc-U-Ment program flow charting 
worksheets 

• EZ Flow program flow charting 
worksheets 

• Software Listing lo^ sheets 

• Tape Caaaette log book 

• BASIC-AIO quick reference card 

• FUNCTION-AID function key templates 



COMMODORE 64 SOFTWARE 



64 YAHTZEE - cassette S20.00 

Computerizeid version of the famous dice 
game. Up to 10 players may play a1 one 
time. Keeps track of all players and high 
score. Uses sprites & sound. 

64 KENO - cassette $16.00 

3 versions of Keno In this game. 
Complete with odds chart. Very good, 
loads of fun. 

64 BLACKJACK - cassette $18.00 

Play blackjack with the 64. Las Vegas 
rules of play. One player. Souncf & 
graphics. 

64 FINANCE -cassette $20.00 

Enter the exciting world of finance. Btiy 
and sell slocks on the market, view 
prospectt/s'. Menu driven. Excellent 
stock simulation game. Try your skill at 
64 Finance, 



64 CHECKBOOK MANAGER 

disk $40.00 

cassette S35.00 

A checkbook journal simple enough for 
the home user and large enough for 
business. With a capacity of 400 checks, 
200 deposits and 100 account charges 
available In a single file, 64 Checkbook 
(vlanager can handle even the most ac- 
tive of accounts. With built-in security, 
unauthorized information cannot be ob- 
tained without the correct password, an 
added plus for large businesses. This is 
the program that makes your 64 work for 
you. 

64 COMPILER (c) by Kavan $100.00 



64 MAILING LIST • disk $35.00 

cassette $30.00 

A complete mailing list for the Com- 
modore 64. It has full sort capabilities. 
Print or review an individual entry, a 
sorted version of the file or the entire file. 
Full editing on screen for adding, 
deleting, or correcting addresses. Holds 
250 names and addresses per file. 

64 DISK CLONE -disk $15.00 

Will backup an entire disk in one pass - 
programs, files, el. al. Requires two 1541 
disk drives set as devices 8 & 9. 

64 MIND BOGQLER- cassette $15.00 

This a frustrating game. Guess the 
numbers and the sequence they are in. 
How many guesses will you take ? Good 
screen display. 



Dealers Welcome - Call for Dealer Pack Authors Wanted - Call for information 

VIC", VIC-SO". and Commodore 64"" are trademarks of Commodore Business Machines, Inc. 



(714) 
778-5455 



Data Equipment Supply Corp. (213) 

8315 Firestone Blvd., Downey, CA 90241 923-9361 



60 PRINT"AND DISPLAY ITS CON- TENTS. PAU 

SING FOR KEYSTROKES," 
70 PRINT" {down} {REVIfiEOFF] ENDS CURRENT " 

FILE": PRINT" {down} (rEV}F3{0FF} BE 

GINS NEXT FILE" 
80 OPENl, 1,0 

90 PRINT" (CLEARIfILE OPEN" 
100 GET#1,W5:IFW$="\"THEN170 
110 PRINTW$; 

120 GETA9:IFA$=""THEN160 
130 GETA$ :IFA5<>""THEN130 
140 GETA?:IFA$=""THEN140 
150 IFA$="{Fli "THEN 170 
160 GOTO100 

170 PRINT" {REvIeND OF FILE" 
180 CLOSEl 

190 GETA?:IFA$="tFl}"THEN END 
200 IFA?="{F3)"THEN 80 
210 GOTO190 

Program 3: Dumbterm Modification 

REM MODIFICATION OF COMPUTEl PR0GRAM( 

8/82)DUMBTERM 

1 PRINT" [clear] " 

2 PRINT" {02 down} (rev) DUMBTERM 

": PRINT" {down} {rIGHT) {rEV}f11 
off} escape line" : PRINT" { down) { 

right) {rev}f2[off} open tape file 

3 PRINT" {down} {right] (rEV}f3 [off) SCREEN 

editor": PRINT" {D0Wn3 {rIGHT} {REV} 
F7{0FF) CTRL "C " 

4 PRINT" {04 down) {rev} (yEL) PRESS SPA 

CE BAR TO BEGIN { 



BLU} " 

5 GETA$:IF A?="" then 5 

6 PRINT" {clear} "r 

10 OPEN1,2,3,CHR?(3B)+CHR?(160) 

20 GETA$: if A5=""THEN60 

21 IF A?="{F3 )"THEN GOSUB1000 

22 IF A5="{F1}"THEN PRINT#1,CHR$(27) 

23 IF A$="{F7}"THEN GOSUB2000 

24 IF AS="Ef2}"THEN GOSUB3000 

30 IFA?=CHR${147)THEN90:REM CLEAR HOME QU 

ITS 
40 A=ASC(a5) and 127: IF A=20 THEN PRINT* 

1,CHR5(3); :GOTO60 
50 IF A>31 OR A=13 THEN PRINT#1, CHR$(a); 

60 GET#1,A$;IFA$=""THEN 20 

70 A=ASCCA$)AND12 7 : IF A=a THEN PRINTCHR 

? (20); :GOTO20 
80 IF A>31 OR A=13 THEN PRINT CHR$(A)r 
85 GOTO20 
90 CLOSEliEND 

1000 INPUT" {red} "fQ$:PRINT#l,Q$:PRINT"{BLU) 

" ; : RETURN 
2000 PRINT# 1,CHR$( 3 );: RETURN 
3000 INPUT" {red} FILE NAME?";FM? 
3010 0PEN2, 1,0, FM$ 
3020 op5="" 

3025 FOR X=1TO100:NEXT 
3030 GET#2,E?:IF E$="\" THEN 3100 
3040 IF E$=CHR$(13)THEN PRINT#1 , OP? : PRINTOP 

$:GOTO3020 
3050 OP?=OP$+E?:GOTO3025 
3100 CL0SE2:PRINT" {blu} "r :RETURN © 



VIC-20' 

COMMODORE 




TREK' $12,95 

The classic game that has 
fascinatod ntimputerLsl.s for 
over a deuatli;. Ctinimand. 
iiig the bridge of your star- 
ship, you oxplore the galaxy, 
fending off the Klingon in- 
vasion with your phasers 
and photon torpedous, at the 
same lime conserving your 
limited lime and energy. A 
real bargain at $12.95. 

LUDWIG'S 

LEMON L.ASERS $14.95 

'I'ou'd niner think blasting 
lemons out of the sky could 
he so much fun! I''asl ma- 
r.liinn i;Mde action. CJne or 
hvo playi'rs. Written by the 
demented duclor who gave 
us "Hospital Adventure". 

COSMIC DEBRIS S14.95 

This liighly addictive ar- 
cade ty[)e name will keej) you 
batllinfi the aliens for days. 

•ONLY ADVENTURES ARE 
AVAILABLE FOR THE 

COMMODORE S4 




COMMODORE 

64®* 



ADVENTURES* 

'I'he busi adventures at the 
best prices! Controlled from 
the keyboard. 

GRAVE ROBBERS' $14.95 
Inlrnducing the hrstCKAPHiC 
ADVKNTUKE ever availal]le 
on till! VIC:-20! li.xplorean old 
deserted graveyard. Actually 
see the perils that lie beyond. 

ADVENTURE PACK I' 

(3 Programs) $14.95 

MOON BASE ALPHA- 
Destroy the meteor that is rao 
ing towards your base. 
computer' ADVENTURE- 
Re-live the excitement of get- 
ling your first computer. 
BIG BAD WOLK— Don't let 
the wolf gobble you up. 

ADVENTURE PACK II' 

(3 Programs] $14.95 

AFRICAN e.SCAl'E— Find 
your way off the continent 
after surviving a plane crash, 
HOKPITAI. ADVENTURE— 
Written by a medical doctor. 
Don't check iidu Ibis hospital! 
BOMnTHREAT.-Getbackto 
town in time lu warn the 
bomb squad of the bomb. 




ANNIHILATOR S19.95 

Protect your planet against 
hostile aliens in this 
defender-like gante. All 
njacbitie code for fast ar- 
cade action, |oy stick 
required. 

KONGO KONG $19.95 

Climb ladders: avoid bar-els 
Ihe cra/.y ape is rolling at 
you. Rescue the riainsel. Par- 
tially inacbini! code for 
smooth, fast action. Key- 
board or joystick. 

Send for free calBlog 

All ijrograms fit in thii standard 

VII' niemory. and cume on 

caissette tapit. 

Drduring— Pltjasu add St. 50 

poslatie & handling per (irder. 

KA residents add 6% sales lax. 

Foreign orders musl tie drawn 

in U.S. funds or usy 

credit card. 

Credil card usur$— irudude 

number and expiralion dale. 

VICTORY SOFTWARE CORP. 

7 VALLEY BROOK ROAD 

PAOLI, PA 19301 

(215) 296-3787 



ATTENTION 

VIC 20/TI-994/A 

USERS 



NEED A PROGRAM? 

HAVING TROUBLE WITH ONE? 

DONTKNOWHOWTO 

TRANSLATE YOUR IDEA? 

WE CAN HELP 

Send us a description of 
the program you want. We 
will send you more in- 
formation and the cost for 
us to create your program. 

Starting at g24.95 

DYTEK 

P. O, Box 241 

Pinellas Park, FL 33565 

PH : 393-3597 

We also buy programs. 
SEND NAME AND PHONE NO. 



1P0 COMPUTI! Ma^nSS 



THE VIC-20 40/80 VIDEO CARTRIDGES 

Quantum Data, Inc. (QDI) produces two (2) 40/80 Video Cartridges, the Video Combo Cartridge 
with I6K basic user memory, and the Video Cartridge which does not contain memory. 

The Video Combo Cartridge and Video Cartridge is the means to upgrade the VlC-20 computer to a 
40 X 24 or an 80 x 24 character display which provides a wealth of new uses for the VIC-20. 

The 40 character mode may be easily viewed on most standard W, sets but a monitor is required for 
the 80 column mode to provide the necessary additional resolution. 



VIDEO COMBO 
VIDEO CARTRIDGE 



%S^9:95^ $259.95 
$Zt9:9S $ 1 59.95 



Call (714) 966-6553 to place your order today! 
Ask for other discounted VIC-20 peripherals! 



jlOUANTUM 
DATA. INC. 

14252 Culver Dr., Suite A, #285, Irvine, CA 92714 • (714) 553-1945 

Offer limited to End Users only if purchased directly from QDI. 
Visa or Mastercard accepted. Above prices retail In U.S. dollars. Shipping and handling not Included. 

VIC-ZO is A rrademark of CarrcnotJorc 8uslnei5 Machines. 




"""'tO/DPU 5Ef\J$Ei:.'' 



QUICK BROWN FOX S60.9S 

The s1 word processor' 

GENERAL LEDGER $19.95 

(VIC-ZO) 

CHECK MINDER 

VIC-20 $19.95 c-64 $24.95 

HOME INVENTORY $19.95 

(VIC-201 

CENTIPOD S27.95 

Like Ceniiped. only beuer" 

FROGEE $27.95 

The excitmg arcade game of F'ogger 

MOTOR MOUSE $29.95 

WhfiT a cheese'ee game-i 
CRIBBAGE 

vic-so $14.95 c-6a $17.95 
Thrs IS The game of Cribbage 

STAR TREK 
VIC-ZO $12.95 c-64 $17.95 

Excellent advenlure g.impi 

MASTER MIND 
VIC-20 SI 2.95 c-64 $19.95 

Makes you Ihink 

ROACH MOTEL $9.95 

Kill the bugs' 

YAHTZEE1.1 $12.95 
YAHTZEE2.1 $14.95 



TO ORDEfl 
P O BOX 18765 
WICHITA. KS 67218 
(316) 263-1095 



Pe/sonal checks accepted 
EAHow 3 weeks) or 
COD (Add %2 00) 
Handling charges S2 00 
VIC-20" IS a registered trademark ol CommodorG 



<^ 



commodore VIC-20 '^ Computer 



CENTRONICS PARALLEL INTERFACE 

allows use of Con^rrrotjore Graphics S99.95 



Expand your vie to full limit 

3 slol $39.95 

piovK^ioris loi SAiiches in tjoaid 

with switches S45.95 

CHARACTER BUILDER - 
UTILITY AID 

will save and inad trom disk or tape 
design your own CUSTOM CHARACTERS 
use wiiri any rtremary 
configuration 

RS-232 bi-cJirectional 

INCLUDES SECOND 
JOV STICK PORT 

•NEW SECOND JOY 
STICK PORT 



$25.00 

$40.00 
$20.00 



VIC-20 to EEE-488 Interface 

allows VIC lo use PET CBM Peripheral 

$79.95 

ROM EXPANSION 
BOARD 

pul yOLjr own programs on 2K or 
4K EPROMS 

we car^ put your program in ROM- 
call lor info 

BK RAM BOARD 
can ae daisy chained 
to lour 

4K RAM BOARD 
VIC DUST COVER 

pralect your VIC 



$19.50 

$49.95 
S39.95 

S12.95 



NEW CARTRIDGE VIDEO GAMES FROM MACHINE 

LANGUAGE, INC — SUPER FAST"C0L0RFUL 

AVAILABLE THRU OEM. INC $25.00 

TWO PLAYER GAMES - FOR VIC 20 " AND COMMODORE 64 " 

CLOSE ENCOUNTERS OF THE WORST KIND • BLACK JACK 

ACID RAIN • BLOCK BUSTER • DOT GOBBLER • FROGMAN 

SPIN TOIDS • CHES 

*e need good new rnactime language garnes - royalty paid 

CALL FOR DETAILS 

Comp)eie/y Tesiett. 100% GuaraniaBd 

order from OEM Inc 
Dealer inquiries invited 2729 South U S t Suite 1 2 

TO ORDER CALL - 305-465-9363 Ft Pierce. Florida 33450 

I'l-'sonji crieos acct'trej ji ca :Tie 10 clear - aoo S2 lor snipping 



May WBJ COMPUTi! 191 



Screen Printer For 
The Atari Wedge 



Michael E. Hepner 



Because of its flexible design, the Atari Wedge (pub- 
lished ill the November 1982 issue 0/ COMPUTER cau 
be expanded to include countless neio commands. In 
this Wedge update, SPRINT is added which sends an 
entire screen to tlic printer. 



Every Atari owner with a disk drive knows how 
long it takes to go to DOS and return. I do not 
wish to find fault with the design of DOS 2. OS. 1 
have several programs that need every spare byte 
of RAM. So by having only the minimum essential 
logic in memor}' and having the extra options in a 
separate, nonresident module, there is more RAM 
free for my own use. 

But most of my programs are small, leaving 
plenty of memory unused. It is annoying to wait 
for memory to be swapped as you go to DOS when 
you know that 20K of RAM is sitting idle in your 
computer. But now, with the Wedge, this is no 
longer a problem. I can use my large programs as 
always, but for my short programs, I can have 
Wedge automatically loaded and use all of the 
disk commands that I normally use without the 
time delay. 

As much as the disk commands have helped 
me, the nicest feature of the Wedge is its table- 
driven design. Any new function can be added 
by simply adding the command name and the 
address of its rouhne to the table of commands. 
In this article, I will show you how to add a utility 
to copy a text screen to the printer. 

SPRINT 

Although I wrote a program that worked, making 
it easy to use wasn't so easy. The Wedge has taken 
care of that problem for me. I chose the command 
name SPRINT because of the similarity to the 
LPRINT command. Instead of sending a line to 
the Line PRINTer as LPRINT does, SPRINT sends 
an entire Screen to the line PRINTer. 

The screen printer routine prints everything 
on the screen, up to (but not including) the line 
with the SPRINT command. The routine reads 

192 COMPUTt! MayWaS 



the screen by changing the operation mode in the 
Editor's Input/Output Control Block to the special 
editor input mode which is mentioned on page 27 
of the BASIC Reference Manual. The routine also 
changes the vector to the Editor Get routine to 
bypass the Wedge until the print operation is 
complete, so that nothing on the screen is acci- 
dentally interpreted as a Wedge command. 

Program 1 is a BASIC loader for the revised 
Wedge. It is very similar to the loader in the origi- 
nal Wedge except for the DATA statements. I 
apologize that most of the DATA statements have 
changed. I had hoped that only a few bytes other 
than the end of the program would have to be 
changed. 

Program 2 is the assembly language listing of 
the screen printer routine alone. If you have an 
Assembler Editor cartridge and wish to add this 
routine to the original Wedge, you must take the 
steps listed below to break the Wedge into two 
parts, renumber the second part, merge the two 
parts together again, and then type in the new 
code for the screen printer routine. The comma-M 
in the last step is required to merge TEMP with 
the program in memory. 

ENTER #D:WEDGE 
DEL 100,3140 
REN 9000,10 
LIST #D:TEMP 
ENTER #D:WEDGE 
DEL 3150,3390 
ENTER #D: TEMP,M 

ML To BASIC 

Program 3 is for anyone who is writing programs 
in machine language and wants to convert them 
into a BASIC loader program. Along with con- 
verting the machine language to BASIC DATA 
statements. Program 3 also counts the number of 
bytes in the machine language program, computes 
the checksum of those bytes, and writes this in- 
formation to the lowest numbered DATA state- 
ment. I used Program 3 to generate the DATA 
statements in Program 1. To use Program 3, you 




SUPER SPECIALS 



GALAXIAN 
$29.95 CARTRIDGE 

CENTIPEDE 
$29.95 CARTRIDGE 



PROTECTOR II 
$22.95 DISK/TAPE 



PAINT 
$29.95 DISK 

MISSILE COMMAND 
$24.95 CARTRIDGE 



Prices effective May 1, through May 31, 1983 



FREE* SOFTWARE 



FREE* SLIK STIK 



ATARI 

CONVERSATIONAL 

LANGUAGEST 43.95 

INVITATION TO 
PROGRAMMING 2&3-T ... 21.95 

MUSIC COMPOSER C 32.95 

MY FIRST ALPHABET D ... 26.95 

TOUCHTYPING T 19.95 

HOMEFILINGMANAGERD 37.95 

MAIUNGLIST T 19.95 

ASTEROIDS ■ C 26.95 

CAVERNS OF MARS ■ D 28.95 

COMPUTER CHESS C 26.95 

MISSILE COMMAND C .... 26,95 

SUPER BREAKOUT - C 26.95 

STAR RAIDERS C 32 95 

ASSEMBLY EDITOR C 44.95 

BASIC C 44,95 

MACROASSEMBLER D . . . . 65 95 

MICROSOFT BASIC ■ D 65 95 

PILOT (HOME PACKAGE) C 58.95 
INVITATION TO PROGRAMMING 

IT 18.95 

SPEED READING T 55 95 

BASKETBAa ■ C 26.95 

GRAPH IT T 15.95 

JUGGLE'S HOUSE D.T .... 22.95 
PILOT (EDUCATOR) C .... 97.95 

VIDEO EASEL C 26 95 

DEFENDER ■ C 32 95 

GALAXIAN C 32 95 

QIXC 32.95 

DIG DUG C 32.95 

ET C 38.95 

TIMEWISED 23.95 

ATARI WRFFERC 61.95 



ADVENTURE INTERNATIONAL 

PREPPIEDT 2395 

S.A.G-A. ADVENTURES D . 31.95 

SEA DRAGON DT 27 95 

STRATOSDT 27 95 



BUG OFF DT. 
ANALOG 

RACEINSPACE DT... 
CARNIVAL D T . . 
SUNDAY DRIVER DT 
CRASH DIVE' D T... 



23.95 

20.95 
20.95 
23.95 
23,95 



ON-LINE 

JAWBREAKERD/T 23.95 

ULTIMA ID 31.95 

THRESHOLD D 31,95 

ULTIMA II D 44 95 

MOUSKATTACK D 27.95 

FROGGER D T 27 95 

SIRIUS 

BANDITS D 27 95 

WAYOUT D 3195 

BEER RUN D 23 95 



THE DISCOUNT SOFTWARE 

COMPANY THAT 

PAYS YOU 

A DIVIDEND!!! 



*COUPON PROGRAM 

The purchtise of each pri>yriim (wilh tht- 
exception of Super Specials. Aldrf. and 
APXl will ejrn you 1 COMPUT ABILITY 
DIVIDEND COUPON Saue 3 coupons 
iind '*?deeiii rhem fcr your cho;cy of Slik 
Silk, a Lef;v Adaptor,, or an Extension 
Cable OR save 10 coupons and redeem 
ihem for your cfioite of any pfogram we 
s«ll for S24 OO or less Iwirh the exception 
of Super SpeL'ials. Atari, and APXl, You 
pay only a S2 50 sfiippiny and handlmy 
charge 



DATASOFT 

SHOOTING ARCADE ■ D 'T 
PACIFIC COAST 
HIGHWAY DT 
MICROPAINTER D . 
CANYON CUMBER ■ D T 
FATHOMS FORTY D 
O'RILEY'SMINE D T 
ROSEN'S BRIGADE D T 
SANDS OF EGYPT D 
BIG FIVE 
COAI. MINER 2049-ER Ciri 



I.D.S.I. 

2395 POOL 1.5 D 27.95 

'^'^•^^ POOL 400 Cdrl 3195 

23 95 SPEEDWAY BLAST Carl ... 3 1 95 

27 95 JUGGLER D 23 95 

23 95 SURVIVAL OF THE 

27 95 FITTEST Cart 31.95 

27 95 FIRST STAR 

27.95 ASTROCHASEDT 23 95 

31.95 SENTIENT 

CYBORG D . . , . 27 95 

39.95 GOLDRusH DT ..;:::::: 2795 



BRODERBUND 

APPLEPANIC DT 23 95 

STELLAR SHUTTLE ■ D T . , . 23.95 
DAVID'S MIDNIGHT 

MAGIC D 27 95 

STAR BLAZER D 25.50 

TRACK ATTACK -D 23 95 

LABYRINTH D.'T 23 95 

SERPENTINE D 27.95 

DUELING DIGITS D 23,95 

DEADLY SECRETS D 27 95 

CHOPLIFTER D 27.95 

GENETIC DRIFT -D/T 23.95 

SPINNAKER 

SNOOPERTROOPS = I-D. 
SNOOPER TROOPS =2 D 



35.95 

35.95 

FACEMAKER-D 27 95 



STORYMACHINED. 



27.95 



WE CARRY HUNDREDS OF ITEMS FOR ATARI 400,800, ASK FOR OUR FREE CATALOG. 



>t)cir(ic|ht(2r 



The Ultimale Joystick 

• 2 Year Warranty 

• More Accurate 

• Easier to Hold *12.95 

LEFTY JOYSTICK ADAPTOR 

Adapts to anil Atari Joystick. 

Moves fire button to top Right. ^9.95 




• 90 Day Warranty 

• Easy Bail Top 
Control 




FStif^imi 



$9 95 
EXTENSION CABLE (5 ft.) 

Adapts to any Atari controller. 

— . -.- *6.95 

ALL JOYSTICKS WORK WfTH Aiari VCS, Sears Teletiame, Con.m<«i<„e VIC 20. Atari 400 800 |AII products havf rog'islered trademarks) 

SODayMoney Back Guaranteg on all Suncom Products - Dealers Inquiries itivitcd!!! 



MastercardA^ISA 
Order Toll Free 



EDU-FUN 

CALL FOR LTEMS AND PRICES . 

THORN 

CALL FOR FTEMS AND PRICES 

NEW FTEMS 

PIG PEN D 23 95 

BAJA BUGGIES D T 25 50 

STARBOWL 

FOOTBALL D.T 25.50 

MASTER TYPE D 3195 

ALIBABA D :::; 26.50 

JEEPERS CREEPERS - D 23 95 

PAINT D 3395 

KIDGRIDD/T 23*95 

MOSAIC 32K 97,95 

D - Disk T - Cassette 
C - Cartridge 

ATAfil IS a irademark ol ATAR!, Itic 



MoitsrCvd 



800-558-0003 

No surcharge for credit cards 



V/SA' 



ORDERING INFORMATION 

J°^^^%^'i^t^ ^^"^ ""^"^^ °'^'^^^- '^«''''''sd '=^1^^'^ or personal check (allow 14 days toclear) to COMPUT ABILfTY 
include ?2_00 shipping on software orders and S2.50 shipping on hardware orders (FREE OR PURCHASED) Master 
Z^rTi y c A^f" a'^."^"^ ^''"'^' ??1 expiration date. Wi residents please add 5% sales lax . Outside of con. 
tmenlai U.S.A. please add 15% shipping (U.S. Funds only). Prices subiect to change without notice 



In Wise. Call 

414/351-2007 



Order Hours: 

Mon. ■ Fn. 12 pm ■ 9 pm C.S.T. 

Sat. 12 pm - 5 pm C.S.T. 

ComputAbility 

P.O. Box 17882 
Milwaukee, Wl 53217 



must first assemble your program and save the 
machine language output as D:AUTORUN.SYS. 
Then put in the BASIC cartridge and run Program 
3. The DATA statements will be written in LIST 
format to the file D:DATA. LOAD the main part 
of your loader program and type ENTER 
"D:DATA". The DATA statements will be added 
to your loader program. 

Program 1: wedge basic Loader 



lOO 
i lO 

120 

ISO 

140 
150 
160 

170 
ISO 

190 

200 
210 
220 
230 
24 

250 
260 
270 
280 



270 

3 00 
3 10 



REM WEDGE BASIC LOADER 

GRAPHICS O:? "Insert a DOS 2. OS 

diskette" 

? "with DOS. SYS in drive 1." 

? "Press l:ia>*iJ:fr when you have do 

ne this." 

IF PEEKC764)<>12 THEN 140 

POKE 764,255 

? :? "Now writing the Wedge AUTO 

RUN. SYS -file" 

TRAP 190:CLDSE tt 1 

OPEN 4H,8,0, "D:AUTORUN.SYS":TRAP 

4000: GOTO 2 00 
CLOSE #1:7 : ? "Can't open AUTORU 
N.SYS for write. ":END 
REM Disk header values are 
REM in the data statements. 
READ NUMBYTES, CHECKSUM 
FOR 1=1 TO NUMBYTES 

READ A: TRAP 310: PUT #1, A: TRAP 40 
00 

CKSUM=CKSUM+A 
NEXT I 
CLOSE ttl 
IF CKSUM< 
<;BELL>Bad 
nts. " : END 
7 :? "DATA ok 



CHECKSUM THEN ? " 
number in DATA stateme 



write successfLil 



END 

•^ :? "Error-" ; PEEK ( 195) ; " when a 
ttempting disk wr i te .": CLOSE « 1 : 
END 
320 REM 

330 REM Following is the decimal 
340 REM equivalent o-f Wedge 1.1 
350 REM Must be type in perfectly 
360 REM in order to function. 
370 REM 

lOOO DATA 794,78719 
7930 DATA 255,255,0,31,164,31 
7936 DATA 104,165,12,141,37,31 
7942 DATA 165,13,141,38,31,169 
7948 DATA 36,133,12,169,31,133 
7954 DATA 13.32,43,31,32,92 
7960 DATA 31,169,162,141,231,2 
7966 DATA 169,34,141,232,2,96 
7972 DATA 32,42,31,32,11,31 
7978 DATA 96,169,80,141,68,3 
7984 DATA 169,31,141,69,3,169 
7990 DATA 0,141,73,3,169,12 
7996 DATA 14 1,72,3,169,11,141 
8002 DATA 66,3,162,0,32,86 
8008 DATA 228,152,48,1,96,76 
8014 DATA 142,34,65,116,97,114 
8020 DATA 105,32,87,101,100,103 
8026 DATA 101,155,160,0,185,26 
8032 DATA 3,201,69,240,7,200 

1W COMPim! May '983 



8 38 
8044 
8050 
B056 
8062 
8068 
80 7 4 
8 8 O 

a OS 6 

8092 
8098 
8 104 
8110 
8116 
8 1 22 
8 1 28 
8 1 34 
8 140 
a 1 46 
8 152 
8 158 
8164 
8170 
8176 
8182 

aiaa 

8194 
8200 
8206 
8212 
8218 
3224 
8230 
8236 
8242 
8248 
8254 
8260 
8266 

82 72 
3278 
82B4 
8290 
3296 
8302 
8303 

83 14 

83 2 O 
8326 
8332 
8338 
8344 
8350 
8356 
8362 
8363 
8374 

83ao 

8336 
8392 
8398 

84 4 
84 10 
8416 
8422 
8428 
84 3 4 
84 40 
8446 
8452 
8458 



DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 



200, 192, 34, 208, 243, 96 
200, 169, 165, 153, 26, 3 
200, 169, 31 , 153, 26, 3 
162,0, 189, O, 228, 157 
165, 31, 232, 224, 16, 20 8 
245, 169, 184, 141, 169,3 1 
169, 31 , 141 , 170, 31 , 24 
173,4, 228, 105, 1 , 14 1 
186, 31, 173, 5, 228, 105 
0, 141 , 137, 31 , 16 9, O 
1 ZZ. 203, 96. 185 , 31 , 108 
32, 32, 62, 246, 8 , 20 1 
155, 240, 4, 230, 203, 40 
96, 14 0,181,31, 142, 182 
31, 165, 2 03, 24 0, 36, 169 
51 , 133, 205, 169, 32, 133 
206, 160, O, 177, 205, 2 17 
1 28, 5, 20B, 12 , 200, 177 
205 , 240, 40, 196, 203, 208 

2 4 0, 76, 37, 32, 20 1 , 255 
240,53, 16 0, 0, 177, 205 
240, 9, 230, 205, 144, 2 
23 O, 2 O 6, 76, 242, 31, 24 
165, 205, 10 5,3, 133, 205 
144,2, 230, 206, 76 , 215 

3 1 , 200, 132, 204, 177, 205 
141 , 183, 31 , 200, 177 , 20S 
141 , 184, 31 , 108, 133, 31 
160, 0, 169, 46, 153, 128 
5, 169, O, 133, 203, 169 
155. 172, 181,31, 174, 182 
31 , 40, 96, 63, 73, 82 

0, 134, 32, 83, 67, 82 
65, 84, 67, 72, O, 31 
33, 76, 79, 67, 75, O 
36, 33, 85, 78, 76, 79 
6 7, 7 5, 0, 41 , 33, 8 2 
69, 78, 65, 77, 69, 
46, 33, 75, 73, 76, 76 
O, 51 , 33, 83, 80, 82 
73, 78, 84, 0, 64 , 33 

2 55. 129, 32, 21, 34, 63 
58, 42, 46, 42, 162, 80 
169, 12, 157. 66, 3, 32 
36,228,162,80,169,3 
157, 66, 3, 169, 6, 157 
74,3, 169, 129, 157, 68 
3. 169, 32, 157 , 69, 3 
32, 86, 228, 152, 16,3 
76. 142, 34, 162, 80, 169 
5, 157, 66, 3, 169, 109 
157 , 63, 3, 141 , 68, 3 
169, 32, 157, 69, 3, 141 
69, 3, 169, 20, 157, 72 
3, 141 ,72, 3,32,86 
228, 152, 48, 13, 169,9 
141 , 66, 3, 162, O, 32 
86, 228, 76, 17 5, 32, 162 
80, 169, 12, 157, 66, 3 

3 2, 86, 223, 7 6, 3 0, 32 
162, SO, 157, 66, 3, 169 
O. 157, 73, 3. 164, 203 
153, 128,5,56, 152, 229 
204, 157, 72, 3, 24, 169 
128, 101 , 204, 157, 68, 3 
169, 5, 105, 0, 157, 69 
3, 32, 86, 228, 152, 16 
3, 76, 142.34,76. 30 
32, 169, 33. 76, 233, 



169,3! 
36, 76. 



76, 233, 32 
!38, 32, 169 



169 



ATR8000; the extraordinary 4 MHz, Z80, CP/M 2.2 
COMPUTER THAT BRIDGES COMPATIBILITY GAPS 



The ATR800C comes with 16k or 
64k RAM. The 64k ATR8000 in- 
cludes doubfe density CP/M 2,2. 

The ATR8000 has five ports: 
COMPUTER IN to connect an 
ATARI 800/400 or a RS-232 
terminal (64k only); PERIPH- 
ERAL OUT to connect ATARI 
peripherals: PRINTER runs a 
parallel printer: FLOPPY DISK 
runs up to four standard dnves 
of mixed size (5V." orS"), density 
(single, double orquad) and type 
(single or double-sided): and the 
RS-232 port runs a serial printer 
or a modem or can be used to 
communicate with another ter- 
minal. 

SOFTWARE: The ATARI 800/400 
and the 64k ATR6000 can operate 
ATARI DOS. OS/A+ and CP/M 
2.2. (The IBk ATRBOOO cannot 
run CP/M.) At least one standard 
drive is required to run OS/A+ 
or CP/M, The ATRBOOO can read 
nearly any 280, CP/M 2,2 disk. 
Some of these are: 



OPERATING SYSTEMS 




WITH SWP'i CD-POWER-flJi 



Alt figures are of 2-16-63 



MAXIMUM Disk SIOhAGE per DfllVE 



Aifieooo 


ISM 


PERCOW 


7301 








ATARI Bia 

rgq 


_ 



40T 401 BOT 77T 



DISK DRIVES: Sv^" and 8" Tandon drives 
in custom enclosures are available. All en- 
closures a^e tully ventilated and include 
power supplies. 5v*" drives are mounted 
horizontafly. 6" drives are vertically mounted 
Tandon Thinlines. 

C0-P0WER-B8: A powerful 6086. 16 bit 
coprocessor, fs avarlable tor the ATR8000. 
the Xerox 820 and 820-11 and the Bigboard, 
It runs CP/M-ee and MSDOS. Choose be- 
tween 128k and 256k versions. 



DfHSITY 



Karpro 
CFomemco 

}t*to, B70-II1 
IRS M-m 
IBM-PC 



SDCDD 
SDADQ 
SDADO 
$D toe 
DD 

DDIPickl*! t Tioutl 
CPfM-Sft diiK* 
«ift>C0'P0WEH*B6 





DISK interfaces: 
A COMPARISON 




i/i/fi/^i/J0i/i 

if g P/ P/Pi/ #>7 V W Pf 




ATRHOOO 


• 


♦ 


• 


• 


• 1 • 


. 


. 


ExmA 


. 


. 




ATARI 510 


a 


hO 


. 1 


NO 


MO 


r-J 


3 


NO 


KO 


NO 


NO 


PERCOM 


• 


• 


• NO 


HO 


EXTRflJerrftA 


NO 


NO 


NO 


ND 




ATARI BIO DPIVES OMly 
WITH AH *lAni BM 





PRICES: 

Hk ATR8000 . 
16k ATRBOOO 
T— 5''' Tandon Dr 
I— 5' ."Genetic Dr 
2— S'." Tandon Drs 
2-8' Tandon Drs 
OS/A. ^D 
Pai ;Se! P( Cable 
4-Conn Dr. Cable. 



S75O0O 2-Conn Dr Cable . .. S25.00 

S49995 B" Or Adapter, ,, S19 95 
M9995 

S3M00 128kC.P-ee- S79996 

S749 95 256k C-P-88 S1049 95 

-CALL. w; CP;M.86, ,,$125000 

549 95 CF/M-86 S?50CIO 

52900 WSOOS -CALL- 

.535 00 •128k Add-on RAH,. S300 00 



CONTACT: 

SOFTWARE PUBLISHERS, INC. 

2500 E, RANDOL MILL RD,. SUITE 125 
ARLINGTON, TX 76011 . -- ■ -, 
817-469-1181 •'. '.X 



ATARI 800. 400 snd 810 are IrBtJemarks ol ATARI, Inc ZSO isa trade mark olZilog CP/M 2 2 
and CP/M-S6 are 1rademarl<s ol Digilal Research, Inc, MSDOS isalrademark ol liJicrosoft 
Percom <s a trademark of Perccm Data Company Xerox 820 and 820-11 are trademarks of 
Xerox Corp, TRSaO-tl is a trademark ol Tandy (5orp. IBM-PC is a trademark ot IBM 




ATARI' 

48KIIAM 

KIT 

BY 
MOSAIC ELECTRONtCS 



Turns any Atari 8K or 16K RAM 
board into a 48K RAM board. 

Only 4 solder connections! 

Complete instructions and 
guarantee. 

AVAILABLE 
FOR A LIMITED T^^E 

FACTORY 
DIRECT 

$9900 



ir 



it 



^mosnic 

ELECTRONICS 

RO. Box 70B, Oregon Cil>: OR 97045 

Phone Orders: 1-800-547-2807 




KB 400" $89.95 

• Exact Atari'" keyboard layout. 

• Long life, gold contact, full stroke key switches. 

• Aluminum enclosure insures stability of keys, 

• Easy installation — remove 4 screws and plug in. 

• Full YearWarrancy — Madein U.S.A. — Low Price. 

flTTQ-SafT 



Send Check or 
Money Order to: 

American 
.Express Accepted 



832 E. Third Street 

Galesburg. Illinois 61401 

(309)343-4114 



Please add '3.S0 
Postage and Handling 
COD sj, 00 additional 

Atari li a trademark of Atar . 



I^Q¥W83 COMPUTI! 195 



8464 


DATA 


76. 233, 32, 173, 37, 31 


8470 


DATA 


133, 12, 173, 38, 31 , 133 


8476 


DATA 


13, 76, 116, 228, 56, 165 


8482 


DATA 


84, 233, 2, 16, 3, 76 


8488 


DATA 


30,32, 14 1 , 20, 34, 173 


8494 


DATA 


74, 3, 141 , 21 , 34, 162 


8500 


DATA 


80, 169, 12, 157, 66, 3 


8506 


DATA 


32,36,228, 162,80, 169 


85 12 


DATA 


3, 157, 66, 3. 169, 17 


35 18 


DATA 


157, 68, 3. 169, 34, 157 


8524 


DATA 


69,3, 169, 3, 157,74 


8530 


DATA 


3, 32, 86, 223, 152, 16 


8536 


DATA 


3, 76, 142, 34. 1 69 , O 


8542 


DATA 


133, 34, 165,82, 133,85 


8543 


DATA 


169, 9, 141 , 74, 3. 173 


8554 


DATA 


4, 228, 141 , 169,31 , 173 


8560 


DATA 


5, 228, 14 1 , 170, 31 , 162 


8566 


DATA 


0, 169, 22, 157, 68, 3 


8572 


DATA 


169, 34 , 157, 69, 3, 169 


S5V8 


DATA 


5, 157, 66, 3, 169, 120 


9584 


DATA 


157,72, 3, 169, 0, 157 


8590 


DATA 


73,3,32,86, 223, 152 


8596 


DATA 


48,71 , 162, 80. 169, 22 


8602 


DATA 


157. 68. 3. 169, 34, 157 


86oa 


DATA 


69, 3, 169, 9, 157, 66 


8614 


DATA 


3. 169, 120, 157, 72, 3 


8620 


DATA 


169, 0, 157. 73, 3, 32 


8626 


DATA 


86,2 28. 15 2, 4 8, 33, 165 


8632 


DATA 


34,205. 20.34, 43. 183 


3638 


DATA 


240. 18 1 , 173, 21 , 34, 141 


8644 


DATA 


74,3, 162, 80, 169, 12 


8650 


DATA 


157, 66, 3, 32, 86, 228 


8656 


DATA 


169, 184, 141 , 169, 31 , 169 


3662 


DATA 


31 , 141 , 170, 31 , 76, 30 


8668 


DATA 


32, 72. 173, 21 , 34, 141 


8674 


DATA 


74,3, 169, 184. 141 , 169 


8680 


DATA 


31 , 169, 31 , 14 1 . 170, 31 


8686 


DATA 


76, 143, 34, 80, 58, 


8692 


DATA 


0,0, 142, 34, 161 , 34 


8698 


DATA 


72, 162,30, 169, 12, 157 


8704 


DATA 


66, 3, 32, 36, 228, 104 


8710 


DATA 


162, 255, 154, 133, 185, 76 


8716 


DATA 


64, 185, 226. 2, 227, 2 


8722 


DATA 


1 ,31 



Program 2: screen printer Routine 

.BYTE "SPRINT", 
.WORD SPRINT 

; Start of screen to printer ou 
tput rOLttine 



2122 


2124 


3 1 5 O 


3160 


3170 


3190 


3 190 


3200 


32 lO 


3220 


3230 


3 2 4 


3250 


3260 


3 2 7 


3280 



3290 

3300 
33 lO 

3320 



LHARGN=*52 
R0WCRS=*54 

C0LCRS=S55 

SPRINT 

r Compute last line to print 

SEC 

LDA ROWCRS ; Current cursor 
row is the line below SPRINT 

SBC #2 ; minus two to 

skip the SPRINT line 
BPL SAVELINE 

JMP EXIT sCursor out of 

range - nothing to copy 

SAVELINE 



3 330 
3 34 
3 350 

3360 

33 7 
33BO 
3390 
3 4 

34 10 
3420 
3430 
3440 
3450 
3460 

34 7 
3430 
3490 
3500 

35 1 O 
3520 
3S30 
354 
3550 

35 6 O 
3570 
3580 
3S90 
3600 
3610 
3 6 20 

36 30 

3640 

36 50 
3660 
3670 
3680 

3690 
3700 

3 7 10 

37 20 
37 30 
3740 
3750 
3760 

37 7 
3730 
3 7 9 Ci 
3800 
33 1 O 

38 2 
3330 
38 4 
3850 

38 6 O 
387 
3880 
3890 
3900 

39 1 
3920 
3930 
39 4 O 
3950 
3960 
3970 
3980 
3990 



STA SVPOS 



;Save last line 



; Save the original open mode a 
f the Editor. 



LDA ICAUXl 
STA SVAUX 



;Save ICAUXl 



Open the printer 



LDX 
LDA 
STA 
JSR 
LDX 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
JSR 
TYA 
BPL 
JMP 



#*50 

#CCLOSE 

ICCOM, X 

CIO 

tt*50 

»COPN 

ICCOM, X 

ttPNAMES<2 

ICBADR, X 

ttPNAME/2 

ICBADR+1 

«8 

ICAUX 1 , X 

CIO 

HOME 
ERROR 



: lOCB #5 
; CI ose i t 



f i rst 



; lOCB 
; Then 



#5 

op en i t 



55 

56 
, X 



:8 = Output 



; Er r or on opt 



Home the cursor. 

HOME 

LDA ttO :Plac( 

t 

STA ROWCRS ; top of 

LDA LMAR6N ; and at 

STA COLCRS ; margin 



cursor 



Bcr een 
1 eft 



; Change EDITOR to special inpu 
t mod e . 



9 = read scree 

automati cal 1 y 
Restore old E 



LDA #9 
1 

STA ICAUXl 

LDA *e404 

STA WEDGETAB+4 

LDA *E405 

STA WEDGETAB+5 



Loop to read the screen. 



PLOOP 
LDX tt * O O 



LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 
JSR 
TYA 
BMI 



#EBUFS<255 
ICBADR, X 
*EBUF/256 
ICBADR+1 , ) 
#C6TXTR 
ICCOM, X 
#120 
ICBLEN, X 

#o 

ICBLEN+1 , : 
CIO 

SPERROR 



; lOCB #0 



; Get record 



120 characters 



;ErrDr on read 



Print the line 

L D X « * S ; 
LDA #EBUF.!<255 
STA ICBADR, X 



IOCS #5 



196 COMPUTE! May 1983 



4000 
4 O 1 CI 
4020 
4 03 
4 O 4 O 
4050 
4060 
407 
4080 
4090 
4 1 OO 
4 110 
4 120 
4 130 
4 140 

4 1 5 <:• 

4 160 

4 17 
4 180 
4 19 
4200 

42 10 
4220 
4230 

4 24 
4250 
4260 
4270 
4280 
4 2 90 
4300 

43 10 
4 3 2 O 
4 3 30 



340 

35 



4360 
4370 
4380 

4390 
44 OO 
4 4 10 

4420 



LDA »EBUF/256 

STA ICEtADR+ 1 , X 

LDA #CPTXTR 

STA ICCOM,X 

LDA #120 

STA ICBLEN,X 

LDA #0 

STA ICBLEN+1 , X 

JSR CIO 

TYA 

BMI SPERROR 

; Check i-f done 

CHECK 

LDA ROWCRS 

CMP SVPDS 
i ng r ow 

EMI PLOOP 

BEQ PLOOP 



Put record 



120 characters 



Error on write 



Compare to end 



Loop i f 
lines 



mor e 
to read 



: Close lOCB #5 and restore Wed 
ge and Editor mode. 



SPDONE 
LDA SVAUX 



STA 

LDX 

LDA 

STA 

JSR 

LDA 

STA 

LDA 

STA 

JMP 

ex i t 
SPERROR 

PHA 
e 

LDA 

STA 

LDA 

STA 

LDA 

STA 

J HP 
PHA 



rcAux 1 
# « 5 c:» 

«CCLOSE 

ICCDM, X 

CIO 

ttMYINPUT-l!y255 

WEDGETAB+4 

#MYINPUT-1 /256 

WEDBETAB+5 

EXIT ; Jump 



Rest or e 
ICfiUX 1 
Close IDCB 



sa ved 



Pol nt to 
Wedge 

to c Dmmon 



Save error cod 



saved 



to 



4430 
4 44 
4450 
4460 
4470 



SVAUX ;Restore 
ICAUXl ; ICAUXl 
#MYINPUT-1S(2S5 :point 
WEDGETAB+4 ;Wedge 
#MYINPUT-1 /256 
WED6ETAB+5 

ERROR+1 ;Jump past the 
instruction 



O 



PNAME .BYTE " P 
SVPDS .BYTE 
SVAUX . BYTE O 
EBUF *=*+120 

Program 3: 

Conversion Of ML To BASIC Loader 

10 DIM L4 (40) , B* (3) 

20 OPEN #4, 4, O, "Di AUTORUN. SYS" 

30 OPEN #5, a, O, "D: DATA" 

40 LNUM=7930: CKSUM=0 

50 L*="7930 DATA " 

60 DNUM=0 

70 TRAP 800: GET #4, BYTE: TRAP 40000 

80 IF DNUM<6 THEN 140 

90 PRINT #5;L*:PRINT L* 

100 LNUM=LNUM+6 

110 L*=STR* (LNUM) 

120 L* (LEN <L« ) -t-l ) =" DATA " 

130 DNUM=0 

140 B«=STR« ( BYTE) 

ISO IF DNUM50 THEN L* ( LEN ( L* ) ■»- 1 ) = " . 



160 

170 
ISO 
190 

soo 

810 
B20 
830 

84 

85 O 
B6 
870 

aao 

890 
900 
9 1 
920 



L* <L 
COUN 
CKSU 
GOTO 
IF P 
PRIN 
L*=" 
L* ( 1 
L* (L 
LS (L 
PRIN 
PRIN 
PRIN 
CLOS 
CLOS 
PRIN 
END 



EN ( 
T = C 
M = C 
70 
EEK 
T # 
lOO 
1 ) = 
EN ( 
EN ( 
T # 
T C 
T " 
E « 
E # 
T '■ 



L«) +1 ) =B* 

0UNT+1:DNUM=DNUH+1 

KSUH+BYTE 



(195)0136 THEN 900 
5;L$:PRI|\JT L* 
DATA " 
STR* (COUNT) 
Lt) +1 ) =" , ■' 
L4)+1)=STR*(CKSUM) 
5; L*: PRINT L* 
OUNT; '■ BYTES OF DATA' 
CHECKSUM^" ; CKSUM 
4:CLOSE tt5:END 
4:CL0SE #5 
ERROR "; PEEK (195) 



(gU 



GENERAL LEDGER SYSTEM 

for ATARI 800 



$ 



149 

Microsoft Base 



QE CKART OF ACCOUNTS 
^^ TRIAL BALANCE 

INCOME STATEMENT 
BALANCE SHEET 



^219.95 - includes Microsoft Compiler 

VISA - MASTER CHARGE - CHECK - \WNEY ORDER 



STCOIiiic. 

•Trademark ATARI, INC. 



4712CHASTANTST. 
METAIRIE. LA. 70002 
(504)454-2421 



ATARI 


ATARI 


$32.95 


$25.95 


PACKMAN 


FROGGER 


CENTIPEDE 


SHAMUS 


STAR RAIDERS 


SERPENTINE 


GALAXIAN 


MICROPAINTER 


DEFENDERS 




APPIE - ATARI - IBMPC 


APPIE (DISK) 


$28.95 


$25.95 


ZORK 1, II, III 


AE 


CYTON MASTERS 


CRISIS MOUNTAIN 


COSMIC BALANCE 


FLIGHT SIMULATOR 


STARCROSS 


CHOPLIFTER 


APPLE - ATARI - IBMPG 


BUSINESS 


$32,95 


APPLi - IBM 


SNOOPER TROOPER 


VISATREND 'PLOT 


TIGERS IN THE SNOW 


$233.99 


TEMPLE OF APSHAI 


PERSONAL INVESTOR 




$104.95 


HARDWARE 


MISC. SOFTWARE 


MICROMODEM II $265 


25% OFF ALL 


IBM 256K $682 


iMAGIC 


IBM 64K $269 


ACTIVISION 


MD-1 $25,50 


SPECTRAVISION 




15% OFF All HES 



* OTT. 




PRODUCT NAME 




PKICE 


1 








? 








3, 








4, 










4 






SUBTOTAL 

TAX 

SHIPPING 

TOTAL 

















p. 0. Box T07S 
Glendale, CA 91209 
Phone (213) 247^6484 



For Fast Delivery, lend csrildea 
cashier check}, money crdvrs, or a\- 
rect cartk wire irini.'faig Personnl 
checks alloM ? tc 3 weths to clear 
Piicti refieci a ca&h diacount only 
ana ato lubjecl \a change Shluping 
— Soltwaie [S.2 00 Minimum) Hard- 
ware [S5 00 Mmrmum) CAill<irn>a ras- 
laenis aaa saigs tax 
VISA and MASTERCARD Accfrpted 



Mc3v ^^S3 COMPUni 197 



INSIGHT: Atari 



Biii Wilkinson 



The scries on zoritin^ your axon interpreter continues. 
hi parti, the expression cvaluator and the "PRINT" 
statement are added to BAIT. There's also a look at 
Atari's new 200XL computer. 



of configurations that I work in. The possible 
combinations I use can be shown as a small array: 



Atari 
DOS 2.0s 



OS/A + 
version 2 



OS/A + 
version 4 



We hope to introduce several new products at the 
West Coast Computer Faire this year, including 
some designed specifically for the new model 
1200 Atari (of which machine I will speak more 
below). I can't tell you exactly what the new pro- 
ducts will be, but I can say that I think that those 
who have written software which follows the 
"rules" will benefit. 

Which "rules"? Oh, nothing much. Just those 
regarding LOMEM, HIMEM, device drivers, reset 
vectors, break vectors, etc. If you are an author 
(or company) who is developing or has developed 
software for the Atari computers, you might want 
to ask Atari for a copy of the note from Howard 
Chan, Manager of Software Acquisition, which 
details what Atari considers the "untouchable" 
locations as well as what "vectors" are immutable. 
We hope to be able to reproduce that note in this 
column next month. 

Anyway, what are we looking into in this 
month's column? Obviously, we will have part 
two of the series on writing your own interpreter. 
(And if you missed part one, you must go out 
right now and buy the March issue! We cannot 
and will not recap the materials previously 
covered.) Also, as mentioned, I would like to 
briefly discuss the new Atari 1200XL machine. 
But first I am going to hang my head a little. 

Pardon Me, My Pratfall is Showing 

After giving everyone else (particularly Atari) a 
hard time about not doing things "right," I am 
embarrassed to admit that I, too, did a thing defi- 
nitely "un-right." 

I must start by giving credit to F. T. Meiere, 
President of the Indy Atari Club from In- 
dianapolis, for not only finding my goof, but also 
giving me what seems to be a workable and proper 
fix. 

The mistake occurred, not surprisingly, in 
my fix to the Atari RS-232 drivers, as published 
in this column in the December 1982 issue of 
COMPUTE!. It came about because of the variety 

1P8 COMPUTE! MQv19a3 



Cartridge 
Software 






RAM-based I 
Software , 



I I I 

i I I 
y \. 

I 1 I 



4 



I 

— +- 



Now, obviously, the vast majority of the Atari 
user population finds itself in the upper left box 
(Atari BASIC with Atari DOS). And, yet, because 
I really don't like working with "MEM.SAV" and 
"DUP.SYS" (and the consequential swapping in 
and out and sometimes losing my memory and 
...), I generally leave that left-hand column for 
last. And, unfortunately, in this case I apparently 
didn't even get to it. For shame. 

Anyway, taking F.T. Meiere's advice to heart, 
I have indeed tested the change he has proposed 
in several of the possible configurations. Addi- 
tionally, I have looked at my original code and 
found out why it failed (and why this new code 
works). So here, without further ado, is the fix to 
my RS-232 fix in the form of a change to line 1990 
of the assembly language code: 

was: 1990JMP(DOSINI> WRONG! 
now: 1990 JMP PATCH3 RIGHT! 

To Excel Or Not To Excel 

The new Atari machine is named the "1200XL." I 
suppose the "XL" is supposed to designate speed 
and sexiness, a la sports cars. And certainly the 
machine looks sleek and sexy enough; it is by far 
the best looking of the current crop of home com- 
puters. Were it not for the serial I/O cable, you 
could easily envision holding the machine in your 
lap while leaning back in your easy chair, admiring 
and caressing it as you would a glass of good 
wine. 

Let's look at the obvious features: 

• Pluses: 62K of RAM, two character sets, a self-test 



PflOGftflm/TDM 



Thousands of Programs 
Through the Mail 



/^.. 



TH6 

PROGfwm/nMC 




LOST 
COLONY 

By David Feiielberg trom Acorn 
You are the Economic Manager o1 the world s firs: space 
colony The next support ship from Earth isn I due tor 
another 15 years, and you have instructions to make 
things go better or get oul ot oHice in shame You must 
allocate labof, explore new te^itones. d&cide on produc 
tion quotas. <3'efermine pay scales and taxes for the most 
productivity You ft armed with maps and charts 10 levels 
ol diflicutty: save the game feature on disk. 

16K Tape or 32K Disk, 

Now thru June 1 

You Pay only $23.96 ^^^ 

ZORK I, II, or III Jih 

From Inrocom ^0'fiiKl 

You can communicate in Qomplste Englith sentences in 
these interactive adventures, wilh a vocabulary ol over 
600 words! Each ol these literate games will keep yoii 
entertained lor 50 hou^s or more 

Zork ], The Great Underground Empire: Discover 20 
treasures, and light lor your life' Zork It, The Wizard of 
Frobozz The Wizard wtll attempt to conlound your quest 
with his capricious powers. Zork III: Brand New 
Adventure' 

32K Disk S39.95 



REPTILLIAN 




disk. « ^^ 

5o\e 



From Synapse 
Fight bfaveEy. Time Gladiator Destroy each part of ihe 
Reptile before it links up wiih other crushing segments to 
destmy the tracking station The hopes of an entire gafaxy 
lly with you' Requires )oyslick 

I6K Tape or Disk S34.95 20% Off 
Now Thru June 1 
You Pay Only S27.96 



SO^e 



.35^.: 




OORF 

From Hoklan 

A untQue Sight and sound adventure in the interstellar war 
against the Gorman Empfre You musi repel attacks by 
Droids. Anti-Gravity Bonks. Anti-Parlicle Lasers. Gorfian 
lighters and torpedos. etc Four levels Irom an Astrobattle 
to a full-Hedged Space War Requires joystock. 

ROM Cartridge, $44.95 16K 

Required 

Disk, $39.95 24K Required 



FORT 
APOCALYPSE 

From Synapse Software 

The Warlords of Kralfha have constructed a pnson deep 
inside Earth ^ the terrifying FORT APOCALYPSE All 
those who have tried to rescue their slave captives have 
vanished without a trace. How it's your Wrnl Can you 
descend thru the Kralfhian disruptor fields and penetrate 
the vast undeiground Vaults ol Draconis'' Can your 
Rockei-Copter fight oH the Wormlings. Servo- Tank Inter- 
ceptors and flobo- Choppers'' Multi-player game with ar- 
cade action: requires joysticks 

32K Tape or Disk, $34.95 

SHADOW 
WORLD 

From Synapse , . ^.h^., 

Canlederates defend pod cities in the atmosphere of 
dangerous Jantor frorn Rigillian ships violating the mining 
Ireatjes Attacks for strategic minerals! Threats from 
mutoid fifef Match your skills and reflexes to the enemtes 
superior numbers T or 2 playe/s with dual independent 
sc:een display, requires Joyst^ck. 

16K Tape or Disk $34.95 



Programmer's 
Corner 

BASIC COMPILER 

by Special Software Systems from DaiaSoft 
Your programs in BASIC can easily be translormed into 
ultra-fast machine language object code Includes a f*ee 
rjn time package and a tutorial on how to program effec- 
tively wilh the Basic CcmpiEer. « ^^ 

32K Disk $99.95 20% Off qA* 
Now Thru June 1 ^*^ 

You Pay Only $79.96 



SHOOTING 
ARCADE 





From DataSoft 

The most colorful, captivating amusement park attraction 

— get a dang out of Shooting Arcade! Aim at stampeding 

elephants, waddling ducks and jumping bunnies- Hold the 

gun steady and pull the trigger — just don't run oul ol 

bullets The animation of the moving gallery targets is the 

highljghl. 

16K Tape or Disk $29.95 r 

CANYON 
CLIMBER 

From DataSoft by T>m Ferns 
You re at the bottom of the Grand Canyon . trying to scale 
Ihe worlds toughest wall. If that s not enough of a probiem. 
there are three challenges to face along the way: angry 
sheep, theatening Indians and attacking birds. Action- 
packed arcade game you'll really enjoy Requires joystick 

16K Tape or Disk, $29.95 




HOME 

ACCOUNTANT 

From Conitnental Software 

Powertu[ home finance package manages your money 
simply! Track 100 budget categories for 5 different check- 
ing accounts and all the credit cards you have. Watch the 
program print checks, balance sheet, net worth 
statements and produce trend analyses, bar or line 
graphs. The lime saving transaction histoi-y lets you cus- 
tomize your own financial package Great for reahsttc 
budgeting! 

Disk $74.95 



Family 
Features 



Bookshelf 



COMPUTER FACTS 
IN FIVE 

From Avalon Hill 

Entertaining game of knowledge with educational merit for 
the entire family 1. 2. or more players select from more 
than 1.000 popular and academic areas associate an^ 
swers with 5 classes and categories. You must be fasl^ 
provide correct answers as you race the sandclock timer 

48K Disk $25.95 



ATARI 

SOFTWARE 

1983 



FroTi The Book Company 

Hundreds of incisive reviews on business, education, word 
processing and game programs, Concise descrtptions 
with 6 fener rating system. Select youf lavontes Irom the 
oniyconsumer guide wnrten exclusively for Atari owners! 

Softcover book $19.95 



Programs for TRS-80, 



@ 1983 The Program Store, Inc. 

For Information Call: 
1(202} 363-9797 



PROGAAm/TOM 



ATARI 400/800, APPLE & IBM. 



To Order Call 

Toll-Free: 

800-424-2738 



Call for FREE VIC 20 Catalog 

MAIL ORDERS: Send check or money order for lolal purchase price, plus $2.00 postage 4 handling. D.C, MD. & VA.: add sales tax. 
Charge Cards: Include all embossed informalion. 
Walt our other stores: Seven Corners Center Falls Church, VA • W. Bell Plaza, 6600 Secunty Blvd.. Baltimore. MD 

• 829 Belhel Hd., Columbus OH • White Flint Mall. Rochville. MD • Coming Soon to Boston. Philadelphia and Pittsburgh 

THE PROGRAM STORE • Dept. 10-05<3 • Box 9S82 • 4200 Wisconsin Avenue, N.W. • Washing! ^70.072001 6 



Item 



Tape/Disk/Book 



Price Postage 
Total 



$2.00 



Name 

Address - 

n CHECK D VISA City 

D MASTERCARD Card#_ 
Computer . 



- State - 



-Zip_ 

-Exp_ 



capability, nearly complete compatibility with the 
400/800 systems, four function kevs and a "help" 
key, two status LEDs. 

• Minuses: One cartridge slot (on the side, and 
you can remov^e the cartridge with power on even 
though you shouldn't), two (not tour) joystick 
ports (both on the same side of the case; consider 
getting a joystick cord extender for two-person 
games), no memory board slots, no external ex- 
pansion capabilities. 

• huplicatiotis: Goodbye, 80-column boards. Good- 
bye, RAMDISKs and" the like. Goodbye, CORVUS 
hard disk drive (which, I believe, interfaces via 
joysticks three and four). 

• Unfounded rumors: There is )iot an RS-232 interface 
built in. There is certainly no parallel printer port. 
In fact, there is no hardware other than what I 
have described. 

Some "features" of the machine are less ob- 
vious: none of the current Atari software will take 
advantage of the expanded RAM. When you bank 
select the RAM, all of the OS software, including 
the interrupt handlers, goes away, so you must 
provide at least a minimal OS substitute. Because 
the I/O space is from SDOOO to SD800 (as on the 
400/800), there is no way around having a "hole" 
in your otherwise contiguous RAM. There is no 
way to get at the RAM which is "under" the car- 
tridge (this flaw is left over from the 400/800; it is 
a real deficiency). It uses the same old slow floating 
point routines. 

So how do I rate the 1200XL in overall features 
and performance? Quite honestly, it depends 
entirely on what the price of the machine is. At 
anything under $450, it's a terrific bargain. 1 feel 
that, given the obvious cost-cutting Atari was 
able to achieve, it should be able to sell for half 
the cost of the 800. However, the indications are 
that the price of the 800 will be dropped and that 
the 1200 will cost more than the 800. If so, buy an 
800 quick! 

The exception to this suggestion is if you will 
write in machine language or be using non-Atari 
languages that can take advantage of the extra 
14K of RAM (now ivherc would you get a language 
like that?). If you need the extra RAM, then you 
may have to seriously consider the 1200. Of 
course, by the time you read this, the price of the 
1200 and the new price of the 800 should be public 
knowledge, so you will be able to see how accurate 
my forecasting is. 

BAIT, Part 2 

In March, we started the process of writing a 
pseudo-BASIC interpreter, which I called "BAIT." 
If you don't have that article, this month's work 
will make virtually zero sense, so don't even at- 
tempt to follow the rest of this column. 

200 COMPUTE! f/ayWaa 



This month, as promised, we add the expres- 
sion evaluatorand tlie "PRINT" statement to 
BAIT. Note that the listing published here is not 
complete. It is meant to be added to the March 
listing. In a few cases, this month's lines will over- 
write (be the same number as) those from March. 
For example, wc have replaced lines 4010 through 
4040 and deleted line 4050. 

Before we get into the explanation of the ac- 
tual listing, we need to extend our discussion of 
just how an interpreter- and, in particular, BAIT 
- works. 

There are two major parts to most language 
interpreters; the program editor and the program 
executor. The March column presented BAIT's 
editor. It is not fundamentally different from most 
BASIC editors. True, only a few BASICs that I 
know of use a line number table, as we did for 
BAIT (some that do include Cromcmco 32K Struc- 
tured BASIC, which we wrote, and Data General's 
Business BASIC, both designed for relatively large 
machines). But, to be fair, BAIT cheats by using a 
very small fixed number of possible line 
numbers. 

The editor used by Atari BASIC and BASIC 
A -I- (and Cromemco and DG BASICs) does, how- 
ever, differ markedly from BAIT's editor in one 
important apsect. In these more sophisticated 
BASICs, the user's program line is scanned for 
correct syntax as it is entered and automatically 
converted to more usable internal "tokens." Of 
course, BAIT should not be chided for any defi- 
ciency here: most microcomputer BASICs (in- 
cluding, for example, Microsoft BASICs) do not 
do any syntax checking at entry (nor do they to- 
kenize anything except, perhaps, recognized 
keywords). In any case, BAIT's editor seems quite 
adequate to me. 

This month, we begin the second major part 
of an interpreter: the program executor. Not sur- 
prisingly, the program executor is much larger 
and more complex than the editor. In fact, we 
need to break the executor down into manageable 
hunks. I think an outline would be useful here. 

I. Program Editor 

II. Program Executor 

A. Initialization 

B. Execution by Line 

1. Execution by Statement 

2. Execution of Statements 

a. Display statement 

b. Print statement 

... (various statements) 

C. Execution of a direct statement or line 

D. Error handler 

This month, we will add parts C, D, and B to 
BAIT. (Note that we did part A in March and 
faked C.) Actually, part C and part B are so inti- 



mately entwined in BAIT that it is hard to see 
where one begins and the other leaves off, but 
that doesn't make our outline any less valid. 

Executing Expressions In BAIT 

Not shown in the above outline are the major 
routines which are common to the execution of 
most statements. To illustrate, first consider these 
two BAIT statements: 



LA = 7n3 
PA + 5 



(Let A = 7*13) 
(Print A+5> 



What do these two statements have in com- 
mon? An expression. From BAIT's viewpoint, the 
two expressions here are "7*13" and "A + 5". A 
major portion of BAIT (and, indeed, a major por- 
tion of am/ language) is the subroutine known as 
"EXecute EXPression," which resides in lines 
5000 through 5999 in the accompanying listing. 
Actually, EXEXP in BAIT is fairly simple when 
compared to that of Atari BASIC. Remember the 
rules from last month? No functions, no prece- 
dence of operators, no arrays, no strings. 

Not surprisingly, almost all BAIT statements 
call the EXEXP subroutine. In turn, EXEXP calls a 
couple of routines, including GETNC (GET Next 
Character - lines 8100 to 8160). GETNC is perhaps 
the lowest level routine of the program execution 
phase of BAIT. It simply scans the program mem- 
ory for the next non-space character, tests to see if 
it is an alphabetic character, and protests when 
the line runs out of characters. 

EXEXP uses GETNC (line 5100) to find any 
ALPHAbetic characters in an expression; such 
characters are assumed to be variables (lines 5300, 
5310). If instead, GETNC found a numeric charac- 
ter (line 5110), EXEXP backs up and scans for the 
entire number (lines 5400 to 5450). Only digits 
and a decimal point are allowed (line 5430); but 
there is a flaw (read that as bug) here that allows, 
but ignores, more than one decimal point and the 
digits which might follow. Finally, if the character 
is neither alphabetic nor numeric, BAIT assumes 
that it is an operator and figures out which one 
(lines 5120 to 5230). If it is not an operator, and if 
the expression was valid, EXEXP returns to its 
caller (line 5160). 

Note that in the case of either a variable or a 
numeric literal, EXEXP assumes that it has re- 
ceived the second argument of an expression of 
the form "argl op arg2" (lines 5500 through 5530). 
Of course, in the case of the very first argument 
in any expression, there has been no preceding 
argument. But EXEXP takes care of that by pro- 
viding a dummy argument ("0") and a dummy 
operator {" -I- ") in its initialization code (line 5010). 
Incidentally, if EXEXP detects two operators or 
two arguments in a row, it rules the expression 
invahd (lines 5210, 5220, and 5510). Similarly, null 



expressions and expressions ending in an operator 
are illegal (lines 5230, 5530, and 5160). 

Finally, the actual operators of BAIT are 
"simulated" via Atari BASIC in lines 5610 through 
5680. Note that BAIT allows BASIC'S operators 
" + ", "-", "*", "/", ">", "<", and " = ". BAIT sim- 
plifies the inequality sign to "#", instead of 
BASIC'S "<>" . (But did you know that many, many 
of the early BASICs used or allowed "#" as an 
alternative to "<>"?) 

Normally, I wouldn't be so bold as to suggest 
changing an entire section of code, but I think the 
clumsiness of EXEXP deserves at least one alter- 
native idea. If you are using BASIC A -I- (or any 
BASIC with a "FIND" or "SUBSTRing" function), 
you could replace lines 5120 to 5128 with a single 
line of code: 

5120 OP = FIND( " + -•/><=#", C$ , ): IF OP 
THEN 5200 

Of course, one could have achieved similar results 
with a string and a FOR/NEXT loop under Atari 
BASIC, but that would have slowed down EXEXP 
even more than it already is. 

BAIT'S Print Statement 

Lines 10200 through 10330 comprise the execution 
of "Print" under BAIT. Notice that DOPRINT 
also uses GETNC (line 10210). Here, we are look- 
ing to see whether a quoted string (line 10220), an 
expression (line 10240), or nothing at all (line 
10210) follows the "?" keyword. (Or should we 
call it a key-letter?) 

Literal strings are fairly simple to handle. 
Starting at the character after the quote mark, we 
simply loop through the buffered line printing 
characters as we go and looking for an ending 
quote (lines 10300 and 10310). If no matching quote 
is found, it is not an error, just as with Atari BASIC 
(end of line 10310). If the quote is found, we adjust 
the character pointer and look for a trailing setni- 
colon or comma (lines 10320, 10330, then 10250 to 
10280). 

And, strangely enough, arithmetic expres- 
sions are the easiest of all things to print. We 
simply call EXEXP and display the calculated result 
(line 10240), falling through to the trailing semi- 
colon and comma check. (Of course, if we were 
writing in assembly language, we would have to 
write the "display a numeric result in ASCII" 
routine, but even here the Atari OS ROMs would 
help us.) 

What Else Was Added 

Finally, we must comment on the other code that 
was added this month. Most of it, of course, was 
needed to support the EXEXP and DOPRINT 
routines. However, some of it certainly is obscure 
enough to bear explanation. As we did in March, 
we will comment on the code by line number(s). 

Mav1V83 COMPUTF! 201 



1100. C$ is used to capture the next character 
by GETNC. The array VARIABLES is designed to 
hold 26 variables (A-Z). One could easily amend 
this to any multiple of 26 and allow variable names 
of the form Al, A2, etc. 

1110. This is kind of silly. In the final code, 
all variables will be initialized to zero. However, 
since we do not yet have a "Let" statement, 1 
wanted to give each variable a unique value so we 
could use it in "Print". Hence, A = l, B = 2, C = 3, 
etc. 

1120. Simply a place to stuff an error message. 

1520 to 1550. The line numbers of some of 
our more important routines. 

1710. I hate using "TRAP40000". 1 like "TRAP 
UNTRAP" much better. 

2360. The only line I actually corrected from 
the March listing. Do you see what the bug was? 

3320. Just changed the comment to make 
more sense. 

4010 to 4040. The beginnings of our "Line 
execution" control routine. We get the starting 
and ending positions of the current line. If the 
line doesn't exist, we try for the next line. If this is 
a direct line, we flag it for later detection (line 
4040). 

4210. As things sit now, if we get here we are 
ready to execute the direct statement. It had better 
be the "P" (Print) key-letter. 

4220. Why call line 4900? Why not do it in-line 
right here? Wait until next month. 

4610. If we didn't just execute a direct line, 
we go do another line. (Won't happen this 
month.) 

4620 to 4640. This code was at lines 4010 to 
4040 last month. It just cleans up the program 
buffer for use by the editor. 

4910. Read line 4920. 

5010 to 8160. Described in the text above. 

8200 to 8290. Why do this several places when 
a single routine will do? Note line 8240: Atari 
BASIC does a similar thing with the 6502's CPU 
stack when it encounters an error. Why try to 
recover through who knows how many sub- 
routine calls when one can simply reset the stack 
to the top and ignore them? 

10200 to 10330. Described in the text above. 

Using What We Have 

Again, BAIT seems to work as designed up to this 
point. You can type in program lines (with pre- 
ceding line numbers) or you can type in a direct 
statement. Unfortunately, all direct statements 
are assumed to be "Print," but just wait until next 
month. 

And just what can you "Print"? Virtually any 
numeric expression that uses the BAIT operators 
and literal numbers. Of course, you can also use 



the variable letters "A" through "Z," but this 
month you will get the artificial values they con- 
tain. To get you started, here are some statements 
to try when you get BAIT's "ready" prompt: 

P "HI THERE" 
P "HI THERE", 
P "HI THERE"; 

Pl+2+3+4 

Pi -t- 2 + 3 + 4 

PA+B+C+D 

P4>5 

P4<5 

Pl/3 

P 1/2 = 0.5 

Pl/2 # 0.5 

P 1/3; 

And one last P.S., a kind of taste of what's to 
come. Once you have the listing working and 
saved, try adding one line: 

4905 IF C$ = "D" THEN GOTO DODISPLAY 

If you don't see what it allows, then wait for next 
month. 

Next Month 

Naturally, we will have Part 3 of BAIT. We will 
actually begin running BAIT programs, and we 
will add about half of the remaining BAIT state- 
ments to our vocabulary. 

Unless something else hits me in the next 
week or two, I think I will respond to mv own 
challenge and begin talking about how to write 
self-relocatable assembly language. 

1100 DIM C$(l) ,VARIABLES{26) 

1110 FOR ALPHA=0 TO 26 : VARIABLES (ALPHA) =AL 

PHA:NEXT ALPHA 
1120 DIM ERR$(40) 
1520 LET GETNC=8100 

1530 SYNTAX=83 00:ERROR=8200:EXEXP=5000 
1550 DODISPLAY=10100:DOPRINT=10200 
1700 REM MISCELLANY 
1710 UNTRAP=40000 
2360 IF LINE$(1,1)=''?" THEN LINES=LINES (2) 

:GOTO 2350 
3320 REM NOTE THAT CURLINE=0 AS WE FALL TO 

LINE 4000 
4010 LENGTH=LINESCCURLINE) :IF LENGTH=0 THE 

N 4600 
4020 CURLOC=INT (LENGTH/1000) :LENGTH=LENGTH 

-1000*CURLOC 
4030 CUREND=CURL0C+LENGTH-1 
4040 IF CURLINE=0 THEN CURLINE=-1 
<<< DELETE LINE 4050>>> 
4100 REM READY TO EXECUTE A LINE 
4200 REM EXECUTE THE STATEMENT 
4210 GOSUB GETNC: IF NOT ALPHA THEN GOTO SY 

NTAX 
4220 GOSUB 4900 

4600 REM COME HERE FOR NEXT LINE 
4610 CURLINE=CURL1NE+1:IF CURLINE>0 THEN 4 

000 
4620 BUFFER$( INT ( LINES (0)/1000) )="*" 
4630 LINES (0)=0 
4640 GOTO PROMPT 
4900 REM THE STATEMENT CALLER 



202 COMFUni May 1963 



4910 
4920 
5010 
5020 
5100 
5110 
5120 
5121 
5122 
5123 
5124 
5125 
5126 
5127 
5128 
5160 
5170 
5200 
5210 
5220 
5230 
5300 
5310 
5400 
5410 

5420 

5430 

5440 

5450 
5500 
5510 

5520 
5530 
5600 
5610 
5620 
5630 
5640 
5650 
5660 
5670 
5680 
5900 
8100 
8110 

8120 
8130 
8140 
8150 
8160 
8200 
8210 
8220 

8230 
8240 

8250 
8290 
8300 
8310 
10200 



GOTO DOPRINT 

REM LINE 4910 IS TEMPORARY l!!l 

EVAL=0:LASTOP=-1 

VALID=0 

GOSUB GETNC:IF ALPHA THEN 5300 



IF C$>="0 
REM WHICH 
IF CS="+" 
C$="-" 
C$="*" 
€$="/" 
C$=">" 

n y n 



' AND C$<=' 
OPERATOR? 
THEN 0P=1: 



9" THEN 5400 



IF 
IF 
IF 

IF 



GOTO 
GOTO 
GOTO 
GOTO 
GOTO 
GOTO 



5200 
5200 
5200 
5200 
5200 
5200 
5200 
5200 



THEN 0P=2 

THEN 0P=3 

THEN 0P=4 

THEN 0P=5 
IF C$="<" THEN 0P=6 
IF C$="=" THEN 0P=7:G0T0 
IP C$="#" THEN 0P=8:G0T0 
IP VALID THEN RETURN 
GOTO 5900 

REM GOT AN OPERATOR 
IF LASTOP>0 THEN 5170 
IF LASTOP<0 AND 0P>2 THEN 5170 
LASTOP=OP:VALID=0:GOTO 5100 
REM GOT A VARIABLE 
VAL2=VARIABLES (ALPHA) : GOTO 5500 
REM GOT A NUMERIC 

CURL0C=CURL0C-1:REM BACKUP TO FIRST N 
UMERIC 
FOR LL=CURLOC TO CUREND :C$=BUFFER$ {LL 

) 

IF (C$>="0'' AND C$<="9") OR €$="." TH 
EN NEXT LL 

VAL2=VAL(BUFFER$(CURL0C,LL-1) ) 
CURLQC=LL 
REM VAR OR NUMERIC 

IF LASTOP=0 OR ABS(LAST0P)>8 THEN 5 90 


GOSUB 5600+10*ABS(LASTOP) 
LASTOP=0:VALID=1:GOTO 5100 
REM EXECUTE OPERATORS 
EVAL=EVAL+VAL2 ; RETURN 
EVAL=EVAL- VAL2 : RETURN 
EVAL=EVAL*VAL2 : RETURN 
EVAL=EVAL/VAL2 : RETURN 
EVAL=(EVAL>VAL2) :RETURN 
EVAL=(EVAL<VAL2) : RETURN 
EVAL=(EVAL=VAL2) : RETURN 
EVAL=(EVAL<>VAL2) : RETURN 
ERR$="INVALID EXPRESSION" : GOTO ERROR 
-REM GETNC 

IF CURLOOCUREND THEN C=-l :CS=CHR$ (15 
5) :GOTO 8140 

C=ASC(BUPPER$(CURLOC) ) :C$=CHRS(C) 
CURL0C=CURL0C+1 
IF C=32 THEN GOTO GETNC 
ALPHA=(C$>="A" AND C$<="Z " ) * CC-64) 
RETURN 

REM ERROR ROUTINE 
PRINT : PRINT "***"; ERR$; "***" ; 
IF CURLINE>0 THEN PRINT " AT LINE ";C 
URLINE 

PRINT :TRAP 8250 

POP :POP :POP :POP :POP ;POP :POP :P0 
P 

TRAP UNTRAP 
GOTO PROMPT 
REM SYNTAX ERROR 
ERR$="SYNTAX ERROR" :G0T0 8200 
REM ==EXECUTE PRINT== 



0250 IF CS=";" THEN RETURN 

0260 IF C$="," THEN PRINT ,: RETURN 

0270 IF C<0 THEN PRINT : RETURN 

0280 GOTO SYNTAX 

0300 FOR LL=CURLOC TO CUREND : C $=BUFFER ? (LL 

) 
0310 IF ASC(C$)<>34 THEN PRINT C$; :NEXT LL 

: PR I NT : RETURN 
0320 CURL0C=LL+1: GOSUB GETNC 
0330 GOTO 10250 © 



10210 GOSUB GETNC: IF C<Q THEN PRINT :RETURN 

10220 IF'C=34 THEN 10300 

10230 CURL0C=CURL0C-1 

10240 GOSUB EXEXP: PRINT EVAL; 



Use the handy 

reader service cards 

in the back of the 

rr^agazine for 

information on 

products advertised in 

COMPUTE! 



ATARr 



PAYROLL SOFTWARE 

FOR 

THE ATARP 800 " 



Miles Payroll System"* is an advanced and comprehensive payroll acc(Hjn|ir>g system 
c}esHgn«] for businesses today Cumulative toials are n^mtair^ed for each employees as well as 
complete reporting, check wntir>g. and W-2 reporting Some leatuies include 

• Random access file organization (or fast updating of individual records 

• Allows weekly, biweekly. sennfrionttiJy or monttily pay periods 

• Coinpteteli menu-driven anfl gsetlnerbtlly 

• Regjiar, DviTBrTeDoiiie tirreS«3^ Holiday. Vacaim Bonus are] ConifTussOT 

• Payroll deductions include Federa^ W/H Tax. State W/H Tax. Cit^ W/H TaK FICA.SD1. Qtoua 
Insurance and 3 userdetined deductioris- 

• Tax sheltered annuity deduction capability for IRAs and oitier tax sbelttrs. 

• Stale and Federal UnempJoyment Insurance maintained 

■ Complete lile viewing and editing capatiility 

■ Maintains up lo 50 employees. 

• up to 10 user-delined Worker's Compensation classilicalions 

• Federal Ta> taOles may be changedm only 1 5 minutes each year py usef wtien IflS change tax. 

• Tat)le metfKXl used for State and City Tax. allowing compatibility wilti arty sta1e's«r ctl/s tax 

• Produces 15 different lepofts, including W-2 Forms Report 

• Clecks calculated and printed ai^tomaticaiiy. 

• PROGRAM ENABLING MODULE" proIectsvaliiablepayTodintarrrralBnfromunauttMizaJuMfi 

• 3 usei-defined payrol I deductions to accommodate customized needs such as savings, profit 
sharing, lax steelier s, per^sions. etc. 

• Pay period, monthly, quarterly and yeady cumulalive tools mainisined Idr $dch employee. 

• Ajtomatic input error detection and recovery protects system from user -generated ertors. 

• Easy- lo-lollow. detailed, and comprehensive user's manual and tutorial leads Ihe user step 
by step allowing anyone with little computer expenertce to easily operate the package. 
Includes tndex. 

• Color, sound, and graptiics utilized for usef ease 

• Maintains employee pay history. 

• Allows for manual payroll check writing. 

• Packaged m a har>d&ome 3-hng deluxe pocketed binder witli Z disicetles and manual 

• Reasoruble price. 
See your local store, or contact Miles Computing 



M 



lies 



MILES COMPUTING 

7136 Haskell Ave. #204 
Van Nuys, CA 91406 
(213) 994-6279 



Alan is a registered trademark of Atan. Inc 

MtlesConnpuhng. MILES PAVROLLSVSTEM. PROGRAM ENABLING MODULE are lrddema/](S 

of Miles CoTTiputing, Van Nuys, Califwoia. Not afliliated witfi Atari, lr>c 

SI 79 95 Flequires 32K and two Atan* 8 1 0* disk drivers Payn^nt m u S funds required with 

order Califotnia residents add 6.5% $ales tax. CO D or prepayment only Dealer inquires 

wefcome 



I^4{iy1933 COMPimt 203 



Part IV 



Commodore 64 Video 
A Guided Tour 



Jim Butterfield, Associate Editor 



In Part 4 of this guided tour of the impressive video 
capabilities of the Commodore 64, we take a look at 
the video structure itself and explore program design 
considerations. 



The story so far: we're touring the 6566 chip, which 
gives the Commodore 64 its video. We have noted 
that the chip goes to memory for its video infor- 
mation, but can only reach 16K; the computer 
controls which 16K bank via control lines in 56576 
(hex DDOO). Then we looked through the functions 
of the video control words - sprite and non-sprite 
- at 53248 to 53286 {hex DOOO to D026). 

We've examined all the bits in the video chip 
control registers. Now let's ease back and look at 
the 64's video structure. We'll talk a bit about pro- 
gram design considerations. 

A Single 16K Slice 

In Part 1 of this series (February 1983), we dis- 
cussed how the video chip gets its screen infor- 
mation directly from memory. We indicated that 
the chip must dig out all of its information from a 




The video chip obtains its screen information 
from one of four 16K memory "slices." Two of 
the slices contain tfie ROtA character generator. 



single 16K slice. We might draw this as a diagram 
(see the figure). 

We can control which slice we want by man- 
ipulating the two low bits in address 56576 (hex 
E)DOO). Normally, the processor picks the slice 
from to 16383. 

Once we've picked a 16K block, we must get 
all screen data from this block: the "screen mem- 
ory," the character set, and the sprites. We cannot 
get the screen data from one block, the character 
base from another, and sprites from still another. 
Because we are restricted, we must do a little 
planning, and design our video information into 
our program. 

After we have picked the 16K slice, we must 
set the video matrix (screen memory) to some 
point within it. We may pick any multiple of 1024 
as a starting address. The normal 64 configuration 
is set to a value of one, meaning we take the screen 
information from memory starting at address 
1024. The video matrix, you may remember, is 
stored in the high nybble (that means multiply it 
by 16) of 53272 (hex DOl 8). 

We must pick our character base next. If we're 
in normal resolution, we may pick any even mul- 
tiple of 1024 as a starting address: i.e., 0, 2048, 
4096, etc. If we're in high resolution mode, we 
must pick only values of zero and eight, meaning 
that the hi-res starting address will be either or 
8192. The normal 64 configuration is set to four or 
six for either graphics or text mode, meaning we 
take our character set from 4096 or 6144. You 
probably remember that the character base is 
stored in the low nybble of 53272. 

So we'd expect a normal 64 to place into ad- 
dress 53272: a video matrix of one, times 16, plus 
a character base of four or six, yielding a total of 
20 or 22. You may in fact sec 21 or 23 if you PEEK 
the location, but the extra bit doesn't matter - it's 
not used. And if we switch to high resolution 
without changing anything else, our character 
base of four or six will be trimmed back to zero - 
explaining whv we saw zero page when we tried 
POKE 53265,48 in Part 1 of this series. 

Let's try a few specific design jobs. 



204 COMPUTi! May 1983 



Now the VIC 20 and 64 can 
communicate with PET peripherals 







--lSa;;r-> 



'Mllll 



'^^^S*' 




IsSliilir"' 




VIC and 64 users 

Would you like to be able to access any of these 
peripherals from your computer? 

^' '/a megabyte disks (Commodore 4040 drive) 

' 1 megabyte disks (Commodore 8050 drive) 

' 1 megabyte disks (Commodore 9090 hard disk) 

' Printers including a wide range of inexpensive 
IEEE and RS232 matrix and quality printers 

IEEE instruments such as volt meters, plotters etc. 

Now you are no longer limited by the VIC or the 64's 
serial bus. Simply by attaching INTERPODyou can 
vastly increase the power of your VIC 20 and when 
used with the new 64, INTERPOD turns the computer 
into a really powerful system. 



With INTERPOD the VIC and 64 become capable of 
running really professional quality software such as 
Word-processing, Accounting, Instrument control and 
many more. 

INTERPOD will work with any software. No extra 
commands are required and INTERPOD does not 
affect your computer in any way. 

Using INTERPOD is as easy as this: o 

Simply plug INTERPOD into the serial port of your 
computer, power-up and you are ready to 
communicate with any number of parallel and serial 
IEEE devices and any RS232 printer. 

INTERPOD costs ^180 



ll4TlsKI><>l> 



Limbic Systems Inc. 986 Tower Place, Santa Cruz, CA 95062 



Task 1: Simple Graphics 

We're quite satisfied with the screen and character 

set, but we'd like to add a few sprites to liven 
things up. Fine, the normal 64 configuration leaves 
room for about four sprite drawings (numbers 11, 
13, 14, and 13), provided we don't need to use 
cassette tape during the program run. This may 
be enough for a lot of animation; all eight sprites 
could use a single drawing, if that suited the task. 

If we needed more than four drawings, we 
might be tempted to move the start-of-BASIC 
pointer to a higher location, making room for the 
extras. That can work quite well, but it will prob- 
ably call for two programs: a configuring program 
and a final program. It's hard for a program to 
reconfigure itself and survive. 

Task 2: New Character Sets 

If we wish to use the regular character set as well 
as new characters that we might devise, we'll 
want to stay in the memory blocks from to 16383 
or 32768 to 491 51. These two blocks contain the 
ROM character generator at offset 4096 to 8191 . If 
we don't need regular characters at all (if we intend 
to use our own) it may be more convenient to 
switch to cither of the other two blocks: 16384 to 
32767 or 49152 to 65535. Since there's nothing but 
RAM in these two, we may find more room. 

Note that some of these RAM addresses are 
"hidden" beneath ROMs - BASIC from 40960 to 
49151, and the Kernal from 57344 to 65535. The 
video chip sees only the RAM; but in a normally 
configured 64 system, programs will see only the 
ROM. You can POKE or store to the RAM beneath, 
but when you PEEK or load from these addresses, 
you'll get the ROM. That's OK; the \ideo chip 
sees the RAM locaticms you have POKEd. Result: 
something for nothing! You can build a character 
base into RAM, and not lose any memory from 
your system. 

Task 3: Emulating A PET 

This is a clear-cut task. We want to move the screen 
to the same place that the PET uses the screen. 
That's very straightforward from a video chip 
standpoint. (Note: If you type the following 
POKEs in one at a time, you may have to type 
blind for some of them.) The PET screen belongs 
at 32768, so we must select that slice with: 

POKE 56576,5 

so that we'll pick up RAM starting at 32768. The 
ROM character generator is still in place. 

Since we want the screen (video matrix) to be 
positioned right at the start of the block, we must 
set it to a value of zero. The character base can 
stay at its value of four (for graphics mode), so we 
must set up address 53272 with zero times 16 plus 
four: 

POKE 53272,4 

2D6 COHPUTt! May WB3 



That completes the video, but we have a iew other 
things to do to make BASIC work in a sound 
manner. We must tell BASIC where the new 
screen is located: 

POKE 648,128 

And finally, we should set the start and end of 
BASIC to correspond with a 32K PET: 

POKE 1024,0:POKE 44,4:POKE 56,128:NEW 

Clear the screen, and the job's done. Zero page 
usage is still different, so not all PEEKs and POKEs 
will automatically work on this reconfigured sys- 
tem; but BASIC and screen now match the PET. 

Task 4: High Resolution Plotting 

There are only eight places in memorv that we 
can place a high resolution screen: 0, 8192, 16384, 
24576, 32768, 40960, 49152, and 57344, We tend to 
choose the two 16K blocks that don't have the 
character generator, 16384 to 32767 and 49152 to 
65535. That way, we'll have more clear RAM to 
use; there will be more space left for our video 
matrix and any sprites we need. 

If we want to write characters on the hi-res 
screen, we'll have to generate them ourselves or 
steal them irom the character generator. Here's 
an odd thing - the video chip sees the character 
ROM at two different addresses, but the processor 
chip (and that includes your program) sees the 
same 4K ROM only at a third location, 53248 to 
57343. Most of the time, the processor can't see 
the ROM anyway, since the addresses are overlaid 
with the I/O chips. 

So if our program wants to see the character 
set, it must flip away the I/O chip with POKE 1,51 
- stop, don't do it yet! There are two problems. 
First, once the I/O chips are moved out - sound, 
video, interface, everything - vou won't be able 
to type on the keyboard; so you'll never be able to 
type the POKE to put everything back. Second, 
the interrupt program uses these I/O chips for 
quite a lew things, and it will go berserk the mo- 
ment you take them out of action. So we must 
use a program or a multiple direct command to 
do the job, and we must temporarily lock out the 
interrupt activity. Type the following statements 
as a single line: 



POKE 56333,127: 

POKE 1,51: 

X = PEEK(53256): 

POKE 1,55: 
POKE 56333,129 



(lock out the inturrupt) 
(flip out I/O) 
(read p.irl of clinriicler) 
(restore I'O) 
(restore interriipl) 



X will contain the top row of pixels for the 
letter "A." If vou like, you can draw a character's 
shape with the following program: 

100 INPUT "CHARACTER NUMBER"; A 
110 IF A<0 OR A>255 THEN STOP 
120 B=5324a+8*A 
130 C=56333 



.vs;^?v^ 



"vjs'' 



./..^ ^^"^ 









'568 



.»» 



'21^ 



.ae 



.«• 









^^p 



age* 



0I 



1. %I^^H R^j*^ 



ti& 



efii 



:::r«i.^^^»''^^^ ^^ 



^!^^^°"^ 



teen 








i^^SS^ 



«■•*.. I^.eO-T.'Se. 



-tff<>-" 



uf^**® !n the 






n^aV^® 




luVtf®'^ 



t?Vi» 



states- 



i.^i=^i:sS5S-^ - 



M 






lift., >"^^1S^%^S^-" 



fiesOL-v 



>N*<i*^^^« 



r\*^^" 



tViet" 



to t"®^® 






use .„otd*'^.?^^'* 






coo 



ows. 



OB 



co"":3udaiW" 



on 



sc 



reef 



nd 






^aoV 



as 



• {Jur Pa9® - «o^'** ^'i'f. Spread- 



Conso\^"„ "tool 






tofO^.V.ToVoa'*'"*' 



iCaVc 



." <rtes 






^ledbV- 



atto^?. 



sVieei 



.ts\ 



■"^^a 



,epvv 



ces 



\NC- 



Oooimodore 64 is a trademark oF Coinmodore Business Machines 

VisiCalc is a Irademark of VisiCorp. 

Calc Resuit is airademarkol Handle Sottware, AB. 



300 



.. .1 oaoo= • 



609 



.795- 



.gASO 



CD 












in 






0^ 

in 



in 



in 






(0 

■D © 

>r 

<o<o 
O 



CM 

a 



S. 



o 
o 
U 




^X^^"" 



>*-» 



C/2 









D 



o 
Q 



o 

D 



O 

D 




ec 

X 

c 



a 






13 
C 



ro 


m 


m 


m 


m 


ir> 


ID 


m 


IT) 


U1 










C 










o 








c 


(A 








o 




>^ 






ji 


O 


■= 






— 


U 


o 






c 
U 


"O 


^ 





tj 


c 




R 


c 


(U 


;3 


T3 


5 




o 












3 
Q 


** 


X 


a. 


SP 


S 


u 


in 


u 


BO 


S 


X 


n. 


*9 

B3 








Cl, 

3 

t 



o 
O 



o 



o 
Q 



o 



o 
Q 



o 
D 



o 

Q 



Lf) 






in 



DO 

in 



o 












o 




n 


m 


CO 


oo 


00 


00 


M 


M 


rj 


(N 


r^ 


ro 


m 


fi 


in 


m 


m 


in 





s 




« 








CA 




O) 




« 




oe 




v> 




3 




.&8 




£ C 




Oo 








>s 




^p 




Ifl h 




^ u 




o 












c 









U 


o 


5 


n 


o 












I 

































tc 






>■ 






< 






^^ 






'^r. 












«<x 






>>6J 














DW 








^ &* 




3 
Cl. 


■£i 


in 
'5b 


c 




4) 


c 








■o 




6C 


ta 


C£ 


1 





< 



Su 







^ 




H 


V 












OS 




U 






tfl 


S " 
£.9 j-«o 








OJ 


















L- ffl U 




Ul 








u 







r*Y 




^^ 






j: E 












J^ 




















-5 






> 






- 






2 
c > 

s - 


a. Si 
2x 


tr r^ 




ii c 














> 












^ 


Of 




s 


n: 




> 







.2 
ii 

X 

X 




T3 

B 
3 


a 

IB 


■a 

3 



u 

B 

ca 

X 


c 

3 


60 

V 

X 


m 
T3 

e 
3 

S 

IB 

X 




3 

X 


■n "0 

3 

X 



o 
Q 



o 
D 



o 
Q 



o 
Q 



D 






o 
D 



< 

O 

Q 



o 

o 
D 



o 
Q 



O 

D 



CM 

o 

D 



in 

o 



O 

Q 



BUSIWRITER 



BUSIWRITER A Honey of a Word Processor 

Why word processors? 

Word processors allow the user to quickly and easily create letters, 
memos, notes, reports, term papers, manuals, poetry and any other writ 
ten information using the memory of the computer as a pencil and 
paper. The computer display or terminal acts as a window through 
which the user views the information as it is entered. The outstanding 
advantage of using BUSIWRITER is that it acts not only as a pencil and 
paper but as a perfect eraser and automatic typewriter. 




a ^^naii. s^a a a n m, a m a s? es 

^EM 13 Sm ^3 d £3 D d A d B Ei O fll BBS 



I o tai BaaaaosiaBfi tm » t. 




For Commodore CBM-64 
Commodore 1515, 1525, Epson, C. Itoh, Qume, Diablo, NEC Spinwriter, Starwriter, 

Prowriter, Okidata, Microline, Gemini-10 
And many more printers 
BUSIWRITER The Queen Bee of Word Processors 

BUSIWRITER allows the user to quickly and easily make any number 
of alterations to the text. BUSIWRITER will instantly reformat your text 
and show you exactly and continuously how the final output will appear. 
BUSIWRITER has more functions than any other known microcomputer 
word processor. With BUSIWRITER assisting in the entry of text, provid- 
ing a 20 page memory and performing an enormous number of editing/ 
composing functions, the preparation of written data is far faster and 
outstandingly more accurate than if It were prepared by hand. 

BGSIWRITER With the Sting Removed from the Prices 

BUSIWRITER 64 only $99.00 for the CBM 64 




BUSIWRITER AVAILABLE NOW FROM YOUR LOCAL DEALER 

(800) 227-9998 
FOR THE NAME OF YOGR NEAREST DEALER ^i\ 

California, Canada, Alaska and Hawaii please call (415) 965-1735 




i 



Skyles Electric Works 

231G South Whisman Road 
Mountain View, CA 94041 



Europe please contact Supersoft, Winchester House, Harrow Wealdstone, England HAS 7SJ, Tel. 01 861 1166 



140 FOR J=0 TO 7 

150 POKE C,127:POKE 1 , 51 : X=PEEK (B+J } / 

128 
160 POKE l,55:POKE C, 129 
170 FOR K=l TO 8 
180 X%=X:X=(X-X%)*2 
190 PRINT CHR$(32+X%*3); 
200 NEXT K:PRINT 
210 NEXT J 
2 20 GOTO 100 

To terminate this program, enter a number 
over 255. You'll note that most of the characters 
are drawn with "double width" lines. A video 
technician would tell you that this reduces the 
video frequencies and is likely to cause less picture 
smear. 

Arranging the video areas is almost an art. It 
takes a little practice, but you'll get the knack oi it 
fairly quickly. 

In the next and final section, we'll give a sim- 
ple example of a program using sprites. In this 
way, we'll try to draw together some of the skills 
discussed in this series. 



Copi/right (:19S2 liiii Bntterfichi 






COMMODORE 

64 



^. 




CASSETTE SOFTWARE 

CVCLONS 

Continuing wdh theif o'an lo contjuer 
the universe me CVTRON EMPIRE has 
Chosen your sector as the fust latgiJI m 
our gaiaxy As COMMANDER ot ihe 
proieCJive 'oJ'cos. you musi manoeuvit? 
youi cfati. avoiding collision ana enemy 

missiles, to attack ano aestroy enemy 

""*^^^=^ .^Si^ warships 

^ #w^ ^aiKULli CYCLONSisprogrammectlOO«cipnmacH 

me language using full HI'RESgraphics 
and utiliiesmany ol the graph rc5 souna 
capabilities of The Commodore 64 
Choose the skill le^nji and game options 
tnat pfovidt^ you wilh the best icel The game is coniioned \vin ,) lovsiich 
AVAILABLE SOON IN DISK 

SCRIBBLER 
VanGognnever na3 ilThiSqouJ SCR'B 
BLER Ijrns your compute J into a versa 
tile, easy to opei-ate a^t sluGro and your 
lelevison into ^ magnificent HI-RES 
canvass 

Independent control otaK lecoiQui-sfor 
background border ang [he multi-coi 
Our dravKing mode 8X magnilicaiion lor 
(ine adjustments pami and circle func- 
tions aie only some ol the l^aiu'es 
Tue capabHil.es o' SCRIBBLER are .i<. 
far [eaching as youf mmd Tust designs 
for graphic displays, creait drawings 
andchansforprojecis Of i..mp!y test your c?eativeabiiiiies SQRJBBlER fequ=ies.i 
lOysiick m conjuncfion with the keyboa'd AVAILABLE SOON IN DfSK- 

Check lor availability with your local dealer, or use the order lorm provided. 
Dealer enquiries are invited- Catalogues available on request. 




FORWARD TO: SVNTAX SOFTWARE INC.. 33 ELMHUHST AVE.. SUITE 502, 
WILLOWDALE. ONTARIO. CANADA M2N 6G8 PHONE (416) 221-8008 
GCeriifhGd Cheque ili Money Order . Visa — Ma$tf;-CafO - Amoncan E»,presi 

CYCLONS ■■ S27.95(U.S.)S34.95(CDN.)= 

SCRIBBLERS " S35.95 (U.S.).S44.95 (CDN.)- 

Stiipping and Handling ■:■■! $1.00 per Gasselte 

Onlano Residents Ptease Add 7'.ii Sales Tax . 

Card No . — — . EAtiuy Dale .TOTAL _„^ 

Signature . 

PLEASE INCLUDE FULL APPBESS WITH ORDER? 
CommQCQre64 is a 'egi^'.^vJ tiaaemari, of Conrtiyoart? Business Machines Inc 



I 



WORLD 
NIX 



U.S. Distributors for: 



PRO(iR€XriV€ 
P€RFH€RfiLy 
a/OFTUJfiR€ 



MW-3oa 

VIC-20/64 Parallel Printer Interface 



Wor<s with all Centronics type 
parallel printers and platters 
including: 

Epson 

C. Itoh 

Okidata 

Nee 

Gemini 10 

TP-1 Smith Corona 

• Hardware driven — works off of the serial port. 

• Quality construction [Steel DIN connectors and Shielded cables!. 

• Switch selectable options: 

—Device 4. 5, 6, or 7 — Upper and lower 

—ASCII or PET ASCII or upper case only 

—7 bit or B bit output 

RECOMMENDED BY PRDFESSIDNAL SOFTWARE for 

WordPro 3 Plus for the 64. 

MW-aOS S119.95 




THE AUTO CLOCK' 



Turn your UIC-20/64 into a 
real time intelligent controller. 

• Switch irour VIC-20/64 or other AC deiJices on and off under 

software control. 

• 256 year clock/calendar. 

• aK CMOS battery backed up RAM. 

• Menu driven software. 

• Plugs into the buss expansion slot- 

• Cartridge style case 

• 19 user accessible subroutines 

• 20 page illustrated manual with detailed programming examples. 
AUTO CLOCK S1 29.95 




UIC-SO / PET 

DIGITAL TO ANALOG and 

ANALOG TO DIGITAL CONVERTER 

• w 5 volt range 

• 8 inputs. 2 outputs 

• Includes dnuer software and documentatian 

MW-304 5189.95 



STAHLIGHTER" 

A sophistocated camputer operated portable 
stage lighting controller with the features of 
SaD.OOO theatre irstallatians. Under SI ,000 
Works With the VIC-30 

Call for speclficBtians and quotes of the 
Scarllghter system. 



dO day parts anci taiior guarantee, 

MICRO WDRLD ELECTRONIX will beat any sdvertiseti price (uniler similar instgck conditions! 
onCOMMOOOFlE/EPSON/KAYPRO/C ITOH and other lines Call lor Quotes. Dealer inquiries 
invited. We service wtiat we sell 



GOTHMOG'S LAIR 

• Pro Adventure Senes I or the CommDdore S4 

• Sound and Color Graphics 

• Comprehensive manual with fold out maps 

• The ultimate challenge to the serious 

computer adventunst 

Worldl GOTHMOG'S LAIR S39.95 



-'rWordPro 3 Plus is a trademark of Professional Software. 
•K-Auw Clock and StarKahtep ffl^ trademarts of PPSS. 



MICRO WORLD Ei-ECTRONIX, INC. 

3333 South Wadsworth Blvd.. #C105, Lakewood. Colorado 80227, (3D31 934-1973 or [303] 987-gB71 



Si ^3 



210 COMWTCI Mot19i3 



VIC File Case 



John Stilwell 



Nothing difficult. ju$t a straightforainrd, easy-to-use 
(hozo'did-l-maimge-zvithout it?) program for your VIC 
to keep track of files. For VlC's of any memory size. 



I have a lot of fun playing games on my VlC-20, 
but I use it for work, too. I recently found that I 
needed a program to keep track of files - some- 
thing versatile, so the format had to be simple. 
Since I couldn't find anything already written, 1 
wrote my own. 

The "File Case" is a set of 31 pages with ten 
entries per page. Because of the limited screen 
space, each entry can be no more than two lines 
long to prevent any scrolling. 

Because of the "crunching" techniques I used 
when writing this program, some lines are longer 
than the maximum 80 columns. When typing in 
the longer lines, use abbreviations for the com- 
mands. For example, PRINT is entered as ?. 

Type N to start a new file. You will be asked 
to confirm and then to give the new file name. 
Note: This will erase any data already in the 
computer. 

Type P and the page number you want; then 
push RETURN. The page shows ten entry num- 
bers with a "-" after them. To make an entry, 
type E and type in the number (one of the ten 
displayed) on the page where you want it to go. 
After pressing RETURN again, type in your entry. 
The entry cannot include commas or colons. When 
you hit RETURN, it will appear on the page. When 
entering or inserting a line, if you want the line to 
appear in the catalog, it has to be reversed. To do 
this, type ", then CONTROL RVS ON, and then 
type in your entry (all of this on the same line). 
When you hit RETURN, the entry will appear in 
inverse video on the page {white on black). 

Type I to insert a line between tw^o existing 
entries. An existing line may be deleted by typing 
K. This kills the specified line and moves up 
all succeeding lines. Type S to save your data 
on tape, and L to load the data back into the 
computer. Type ? to get the definitions of the 
controls. 

To cancel a control (except for Load, Save, or 
New), simply type any control letter instead of an 
entry number. 



Pressing RETURN will move you to the next 
page. Type C to get the catalog. If any of your 
entries are reversed, they will appear next to the 
page number that they are on. The catalog can 
show only ten listings at a time. If you have more 
than ten reversed entries, push RETURN to get 
the next ten reversed entries. 

If you are not using a memory cartridge, 1 
suggest that the variable N in line 1 be changed 
from 309 to 109. This gives you only 11 pages to 
work with. If you want more or fewer pages to 
work with, then change this number by multiples 
of 10 only. The program will work with any mem- 
ory configuration. 
10 N=309:X=(N+1)/10:DIMS$Cn):P=1;POKE3 687 

9, 187 
20 FORI=0TON:S$(I)="-":NEXT 
3 PRINT" (clear) " 
40 GOSUB590:IFA=0THENPRINT"f03 UP)":G0T04 


50 ONAGOTO60,140,220,260,330,390,450,510, 

5 50 
60 K=0 

70 Q=0:PRINT" {clear} {BLK} iREVlCATALOG :"? 

T$:PRINT"PAGKIPUR} " 
80 FORJ=KTON:IFASC(S$ C J ) )=18THEN:PRINTINT 

( J/10 + 1),-S?(J) :Q=Q+1:IFQ>9THENG0T 

0100 
9 NEXTJ 

100 IFJ>=NTHENGOTO40 
110 PRINT" {down} I REVIHIT RETURN TO CONTINU 

e{off} " 
120 geta?:ifa$=""then 120 

130 K=J+1:GOTO70 

140 INPUT" {BLK} WHAT PAGE{ PUR} "; P? : P=VAL( P? 

) :A?=P$:GOSUB610;IFA=0THEN160 
150 GOTO40 

160 IFP<1ORP>XTHENPRINT"{02 UP}":GOTO140 
170 PRINT" (clear) ( REV } {BLk5pAGE"P ;T5 :PRINT 

" {pur} ": fori =0TQ9:L={P-1)* 10+1: PR 

INT" (left) "L;S?(L) : NEXT 
180 GQSUB 590: IF A=0 THEN 200 
190 GOTO 50 

200 P=p+1:IF P>XTHENP=1 
210 GOTO 170 
220 INPUT" (BLK}ENTER#{pUR} " ; R$ :R=VAL( R? ) :A 

?=R$:GOSUB610:IFA=0THEN240 
2 30 GOTO40 

240 IFR<0ORR>NTHEN PRINT" (02 Up}":GOTO220 
250 INPUTS? (R) :GOTO170 
260 INPUT" {BLK}INSERT#{PUR} " ; R5 : R=VAL( R? ) : 

A$=R$:GOSUB610:IFA=0THEN280 
270 GOTO40 

280 IFR<0ORR>NTHEN PRINT" {02 UP}":GOTO260 
2 90 PRINT" {elk} ENTRY {PUR3 ": INPUTD? : PRINT" ( 

BLK}INSERTING{pur}":IFR=NTHEN170 

MovWSa COMPUTl! 211 



300 



310 

320 
3 30 



3 40 
3 50 
360 
370 
380 
390 

400 
410 
420 



430 
440 
450 

460 
470 
480 



490 
500 

510 



FORI=RTON-1STEP2 :SA$ = S$ Cl + 1 ) : S$ (l+l )=S 

? (I) : S$ (I )=D5 :D$=SA? :IFASC(D? )=45 

THENGOTO320 

NEXT 

GOTO170 

INPUT" {BLK]KILL which LINE# [pur] " ; R$ : R 

=VAL(R$):A$=R$:GOSUB610tIFA=0THEN 

3 50 

GOTO40 

IFR<0ORR>NTHENPRINT" {02 up) ":GOTO330 

IFR=NTHEN380 

F0RI=RT0N-1 : S$ ( I ) =S5 ( I +1 ) : NEXT 

S$(N)="-":GOTO170 

PRINT" {clear} [BLK) {revIsAVE TO TAPE":P 

RINT" {dOWnIaRE you SURE (y/n) 

GETA? ; IFA5=" "THEN400 

IFA$="N"THEN170 

OPENl, 1,1,T$: PRINT* 1,T$:FORI=0TON: PRIM 

T#1,S5(I) : PRINT" tHOMEj "TaB(15); I: 

NEXT:CL0SE1 

PRINT" (10 D0WN}"T$" saved { down } {?UR} " 

GOTO40 

PRINT" {clear} {elk} {rEV}L0AD FROM TAPE" 

: PRINT" {DOWN}aRE YOUR SURE (y/n) 

GETA5:IFA$=""THEN460 

IFA$="N"THEN170 

OPENl ,1,0: INPUT#1 , T$ : FORI=0TON: INPUT* 1 

,S${l) : PRINT" {home} "TAB(15 ) ; I :NEX 

T:CL0SE1 

PRINT" {06 down} {pur}" 

GOTO40 

PRINT" {down} {elk} {rEV}aRE YOU SURE (y/ 



N) {PUR] " 
5 20 GETA$:IFA?=""THEN520 
530 IFA$<>"Y"THEN170 
540 PRINT"THE NEW FILE NAME" : INPUTT? :G0T02 


550 PRINT" {clear} {rev} {BLK} CONTROL DEFINI 

TIONS ": PRINT" { REV }C{ off} ATAL0G{ 

down} ": print" {rev3p{off}age NUMBE 
r{down} " 

560 print" {REV3e{0PF}nTER LINE{D0WN} ":PRIN 
T" {rEV}i {OFFJnSERT LINE{D0WN] ":PR 

int"{rev}k{off}ill line{down]" 

570 PRINT" {rEV3s{0FF]AVE TO TAPE? DOWN} ": PR 
INT" {REV}l{0FF}0AD FROM TAPE{doWN}" 

:PRint" {rev3n{off3ew file{down} " 

:PRINT" {REV}?[oFF} DEFINITIONS" 

5 80 GOTO40 

5 90 PRINT "{ DOWN] { BLK) { rev} C,P,E, I, K,S,L,N, 

?{PUR]" 
600 GETA?:IFA$=""THEN600 
610 IFA?="C"THENA=1: RETURN 

RETURN 

RETURN 

RETURN 

RETURN 



6 40 
650 



620 IFA$="P"THENA=2 
630 IFA$="E"THENA=3 

IFAS="I"THENA=4 

IFA?="k"THENA=5 
660 IFA$="S"THENA=6:RETURN 
670 IFA$="L"THENA=7: RETURN 
680 IFA$="N"THENA=8:RETURN 
690 IFA?="?"THENA=9: RETURN 
7 00 A=0: RETURN 



yiMeTREK 



OOP 



JUL 







Take Command! 

> command of the USS Enterprise and turn your VIC : 
) Sfarship! As commander you must use all your skills i 
protecting Federation limits from enemy ships. Maneuvering 
your ship, firing its weapons - phasers, photons, and probes- and 
maintaining its shields and power, require skill and experience, 
but you have weapons analysis, scanning, and domage reports 
to help out. This complex, fast-moving strategy game has 50 skill 
levels and a (pseudo) real-time option. 



ViC 20 with 1 6K f^/lemory Exponsion, cassette. On sale near 

you or send check for $2 1.95 to: 

VOYAGER SORWARE P.O. BOX 1126 BURUNGAME, CA 94010 

Allow 2 1 Oays lor deln/ery California residenis add 6' >% soles lax 



\l7l^afAjeA,cMeJ^ 




^A^cyplMrcMj^y 



List HELPER" 

Allows you to enter, edit, and sort lists by fields 
which you define. 

Stock HELPER 

Using the Sunday paper, you can track and 
analyze several stocks. Stock HELPER calculates 
several popular technical analysis measures. 
Check HELPER 

Helps you balance your checkbook and provides 
a limited double-enlry bookkeeping system. 
Check HELPER produces a cassette or diskette 
file acceptable by Tax HELPER for the 1983 Fed- 
eral Income Tax 

Available from your dealer for 

Commodore VIC-20 and 64 

Atari 400/800 

(M)agreeable software, inc. 

5925 fvlagnolia Lane • Plymouth. fvlN 55442 
(612)559-1108 

Computer names are generally tradernar ks of the Manulactunng Company 



212 COMPim! Mov^^sa 



SOFTWARE 
SPECIALS 



NEW! 

CARTRIDGE GAMES 

FROM TRONIX 



SCORPION 



$34.95 



Full 4-way scrolling, fast action pre- 
dator game where it's you against 
killer (rogs, slimy worms, stalker 
flies, dfagons and tiatctier pods. 
With 32 levels of play. 

GOLD FEVER .. $29.95 

Explore a deadly mine searching for 
valuable gold deposits. Avoid roam- 
ing mine carts, rolling boulders and 
a crazy claim jumper! With 9 levels 
of play. 



^^^1^ 



From Interesting Software 
Cassette $15,95 

ALL 

^,f? MACHINE 
^^%® CODE! 



DEADLY SKIES 



$29.95 



Frenetic, fast paced, action-packed 
game where you are the Rebel 
lighter attacking the hostile military 
base. Avoid S.A.M.s. smart bombs 
and deadly radioactive clouds! Over 
10 levels of play. 



- • ~ Bring the fun of the shooting 
gallery into your home. With 
music and colorful graphics. 



CBM-64 & VIC-20 MINI-MONITOR 

All machine code monitor which will 

disassemble code, do text dump, 

move memory, hex to decimal and 

decimal to hex conversion as well as a 

mini-assembler! 

VIC-20 version requires 8K expansion. 

Cassette $24.95 

Disk $29.95 



CREATIVE SOFTWARE 

GAMES ON CARTRIDGE 

CHOPLIFTER $39.95 

SERPENTINE $39.95 

APPLE PANIC $39.95 

ASTROBLITZ $39.95 

TRASHMAN $39.95 



Stellar Triumph 

Great new all machine code game for your 
CBM-64. One or two player game with all the 
arcade sound and graphics! Fantastic space war 
game with many options. 

From H.A.L. Labs ... tape or disk $24.95 



$24.95 



Dust Covers 



Water resistant 
Attractive brown canvas 



$7.95 



KIDS & THE VIC 

Great new book to adid to your library. 
only $14.95 



INTERESTING SOFTWARE 

21101 S. Harvard Blvd.. Torrance. CA 90501 
(213) 328-9422 
Vrsa MC Ctieck luloney Order Add S2.00 Postage & Handling 

CA residents add appropriate sales tax Dealer Inquiries Invited 



FORTHEVIC-20« 



THE COMPUTER REVOLUTION IS COMING! 
BE READY WITH A MASTERY OF THE COMPUTER KEYBOARD! 

IN THE AGE OF THE COMPUTER, EVERYONE FROM THE SCHOOL CHILD TO THE CHAIRMAN OF THE BOARD SHOULD 
BE AT HOME AT THE COMPUTER KEYBOARD. THESE PROGRAMS PROVIDE EVERYTHING YOU NEED TO MASTER THE 
KEYBOARD AND GAIN THE COMPETITIVE EDGE THIS BRINGS IN THE COMPUTER AGE. 

* Rated THE BEST educational program for the VIC-20 by Creative Computing Magazine 

* TYPING TXTTORPLXTS WORB INVADERS — $81.95 

(2 programs on one cassette tape for the unexpanded VIC-20) 

Typing Tutor plus Word Invaders makes learning the keyboard easy and fun! Typing Tutor teaches the keyboard in easy 
steps. Word Invaders makes typing practice an entertaining game. Highly praised by customers: "Typing Tutor is great", 
"Fantastic", "Excellent", "High Quality", "A source of great learning and joy for our children." 

Customer comment says it all . . . 

"... and it was everytfiing you advertised it would be. In three weeks, my 13 year old son, who had never typed before, was 
typing 35 w.p.m. I had Improved my typing speed 15 w.p.m. and my husband was able to keep up with his college typing 
class by practicing at tiome." 



FOR THE COMMODORE 64® 



SPRITE DESIGNER by Dr. Lee T. Hill — $16.95 

Save hours of work when designing sprites. Helps you create multiple sprites, copy and alter them to create views from 
different perspectives automatically for 3-D or animated effects. Options include: copy any of the previous sprites, reflec- 
tion, rotation, translation, shearing, reverse image, merge & intersect. Saves sprite data for merge into your program, 

SHIPPING AND HANDLING S1.00 PER ORDER. CALIFORNIA RESIDENTS ADD 6% SALES TAX. 
VISA AND MASTERCARD ORDERS (VlUST INCLUDE FULL NAME AS SHOWN ON CARD, CARD NUMBER, AND EXPIRATION DATE. 

FREECATALOGSENTWITH ORDER ANDON REQUEST 



P.O. BOX 9403 

SAN RAFAEL, CA 94912 



dCADEmV 

SOFTkl//1RE 



(415)499-0850 



Programmers. Write to our New Program Manager concerning any exceptional VIC-20 or 064 game orolher program you havedevelopedT 



The Atari Musician 



Barry Beltan 



You'll be making music on your Atari in no time with 
the help of these tivo programs. You can compute pitch 
vahies to play major and minor chords, generate scales, 
and even tune the computer so that you and Atari can 
play duets. 



COMPUTE! published an eye-opening article in 
the February 1982 issue entitled "Transposition." 
The author, Janet Whitehead, explained the 
simple mathematical relationship between each 
of the pitch values for the various musical notes 
available in Atari BASIC. After she explained how 
this could be put to use in musical transposition, 
she challenged the reader to find further applica- 
tions. Here is my crack at it. 

Four-Note Chiords 

The most commonly used chords are the four-note 
major and minor chords. The four notes of any 
chord can be defined by the first note of the chord 
and the interval pattern for that particular type of 
chord. The first (lowest pitch) note of the C-major 
chord, for example, is a C. The second note of 
any major chord is always located four half-steps, 
or two whole steps, above the first. This gap be- 
tween the notes is known as an interval. 

A half-step interval can be found on the piano 
by locating any two adjacent keys, such as C and 
C sharp. It can also be found in the pitch table of 
the Atari BASIC Manual by locating any two con- 
secutive entries. 

Since we know that the first interval of a major 
chord is four half-steps, we determine the second 
note in a C-major chord by counting up four half- 
steps from C, arriving at E. The interval between 
the first and third notes of a major chord is always 
seven half-steps. If we again count upward from 
C, we find that the third note of a C-major chord 
is a G. The fourth note is always a 12 half-step 
interval, or octave, above the first, which gives us 
a C for our final note. Thus, the four notes of a C- 
major chord are C-E-G-C. In a similar manner, 
the four notes of an F-major chord are found to be 
F-A-C-F. 

Computing Pitch Values 

At this point, let's summarize the previous article. 
Basically, the author pointed out that the pitch 
values for any two adjacent notes in the pitch 
table are related in the same way that the fre- 
21(1 ctmfvm Movi983 



quencies for those two notes are. Namely, they 
differ by a constant factor of M = 2*('/i2) for each 
half-step interval. Two half-steps would involve a 
factor of M squared, three half-steps a factor of M 
cubed, and so forth. 

Therefore, to compute the pitch value of the 
second note of a major chord, multiply the first 
value by M raised to the fourth power. To compute 
the third pitch, multiply the first by M to the 
seventh power, and to compute the fourth, multi- 
ply the first pitch by M to the twelfth power, which 
is just two. This procedure will result in pitch 
values for any major chord, regardless of the starting 
value. The only limitation is that we are restricted 
to eight bits in which to specify a pitch, which 
gives us a range from zero to 255 to work with. 

If we continue with our example of the C- 
major chord, we start with a pitch value of 121 for 
middle C and proceed to compute the rest of the 
chord as follows: 

C = 121 

E = 121/(2'(4/12)) = 96 

G = 121/(2" (7/12») = 81 
C = 121/2 = 60 

Program 1 is a demonstration which puts all 
of this information together. This program allows 
you to select a starting pitch and play either a 
major or minor chord built upon the selected low 
note. The desired chord will then be played for a 
few seconds. 

Scales, Chords, And Duets 

If you prefer, you can generate scales using a simi- 
lar technique. Program 2 allows you to play a 
major, minor, or chromatic scale of one octave, 
given a starting pitch. All major scales consist of 
eight notes and have the following interval pat- 
tern: whole-step, whole-step, half-step, whole- 
step, whole-step, whole-step, and half-step. 
Minor scales also have eight notes, but they differ 
from major scales in that the third and sixth notes 
are each dropped down a half-step. A chromatic 
scale includes every half-step in an octave, which 
results in 13 notes. 

When a song is transposed it simply means 
that you are playing the same tune, but starting it 
on a different note. To do this, multiply (or divide) 
the variable used to hold the pitch values of the 
song by a constant of your choice. 

Do you have a program which plays a few 
random notes? Perhaps it would sound better to 



EASTCOAST SOFTWARE 

€CS, . . iiijlation-jightiiiti prices. 



ATARI 
SOFTWARE 



747 Landing S:mulalor 24KC il7 TS 

747 Ldndmy Simuiaici :i2KD 17 76 

Advanced Musk: SysTein D 2^ 25 

AdwniursonaBoai.lSKD 17 90 

Awr.lii' CD 28 9(1 

All Babii & Fully Thivkes :t2KD 24 90 

AM.-n Cmlcn IbKR 2H «l 

Andromt'd*! Cfinquesi C 12 75 

Atulroirvd^! C(mmi«I 4(1KD U> 25 

Appli' Pome 16KC 4«KD 2(1 95 

Armor A!!aull32KD.- 2H 9(1 

Aiwmbk'rEdilorSKR 46 4U 

A^»T(^ld^ UKR 28 45 

Alan Basic SKR , . - - 46 40 

Atari biwed Reading C 58 15 

Ann WnUT R 62 00 

Airatk AiEPCyG.4C 20 95 

Aiiack Ai EP CYG 4 D 24,90 

Aujionchi' 16KC 17 75 

Aualanche IbKD 17.75 

Baiulin4HKD 24 75 

Baseball ItKC , .20.1)5 

Bjiebai; 24KD 24 75 

Baskubai; (iKH, - . , 27 00 

Bookkeepei Kit 48KD 193.70 

Bookkeeper 48KD 116.25 

Canyon Ctmb«rl6KC/D 20 95 

Catacfimbs of BaiuTh D 17,75 

Caverns o( Mots 16KD 3J 00 

C.niifwdefeKH 34 75 

Checkers 32KD, 35,50 

Cheii48KD 49 50 

Chicken R 3:i DO 

Chicken 16KC/D 27,50 

Chopliller 48KD 24 75 

Claim Jumper R 331X1 

Claim Jumper 16KC ... . 24 75 

Clo^nsA Balloons 16KC/D 20 95 

Commbai 24KD 17 90 

Communicaior Kii R 235 00 

Compuler Slocks Si Bonds 32KC 15 90 

Compuler Slocks & Bonds 40KD 17 90 

Conveisanonal Spanish IfeKC 46 40 

Conversslional [lalian 16KC 46 40 

Conversalionai German 16KC 46 4U 

Conversaliona! French 16KC 46.40 

Cosmic Balanrre 48KD. 2B 90 

Crmstirt KKR 33 00 

Crosilire 16KC,32KD 20 P5 
Crush Crumble* Chomp 32KC/D20 95 

Crypl o( Ihe Undead 4flKD 20 <15 

Curse ol RA 32KC 15 90 

Curse ol RA 32KD 15 90 

Cvpher Bowl 16KC 35 5(1 

Cvrron Masiets D , 2« 90 

Danger in Dnndisti 32KC 15 90 

Danger in Drindisii 32KD - 15 90 



Atari 800 (48K) s 525.00 

Atari 400(16K) >225.00 



Price Hellers Cash DiscounT On'v 



Data Managemenl System D 

Data Perlect 32KD 

Datestone. 0fRtn32KC 

Dalesrones of Ryn 32KD - - 

David s Midnight Magic 4SKD 

Deadline 32KD 

Defenders 

Deluxe Invaders 16KR 

DsluKC Invaders 16KD. . 

Dig Dug R 

Disk Workshop D 

Diskey 32KD 

Dodge Racer 16KC/ 32KD 

Dog Daze 8KC 

Dog Daze 24KD 

SouThiP 16KC . . 

Dou.nhill32K[> 

Dragons tye 40KD 

Eastern From 16KC'32KD 

Empire o[ the Overmind 40KC 

Empire of rhe Overmmd40KD 

Enienainer Kit 8KR 

Escape From Vulcan s Isle 32KD 

ET Home Phone R 

Face Maker D 

Family Cash Flow 32KD- 

Family Finance D 

File Manager 800 f 40KD 

Flip Out D 

Fort Apocalypse 32KC,' D 

Ftogger 16KC/32KD 

Galactic Empire 32KC 

Galactic Gladiators D 

Galactic Tradei 32KC 

Galahad and Ihe Holy Grail 32KD 

Galaxian R . . 

Genetic Dnd 16KC,32KD. . 

GFS Sorceress 4aKC 

GFS Sorceress 40KD - . 

Golt Challenge R 

CoB Challenoe Cj D . . . 

Gomoku 8KC 

Gomoku D 

Gori 16KR 

Gori 16KD 

Guradian of Gorn 16KC 

Guardian of Gorn 24KD 

Heilfire Watnor 32KD 

Home Filing Manager 32KD 

Home Financial Management C 

Home Manager Kir D 

Invasion Orirrn C 

Invasion Orion 32KD 

Inv.lation lo Prrrgramming I 8KC 

Inv tation to Programming 2 SKC 

Invitation to Programming 3 SKC 

IllB-Balloon 16KCD 

Jeepcrs Creepers D . . 



1775 
76 65 
1590 
1590 
-24 75 
35 50 
34 75 
28 90 
24 75 

34 75 
24 75 

35 50 
24 75 

.17 75 
17 75 

.17 75 
1775 
20 95 

23 95 
20 95 

.24 75 
73 15 
.20 95 
.38 75 
-24 75 
-17 75 
.38 75 
.70 00 
20 95 
.24 75 

24 75 
1590 
28 90 
15.90 

23 25 
34 75 
20 95 
20 95 

24 75 
.33 00 
.17 90 

15 90 
20 97 

.33 00 
28 90 
20-96 
24.75 
28 90 

.38 75 
23 0(1 
(.2 IK) 
17 9(1 
17 90 
1925 
23 15 

23 15 

24 76 
.20 95 



Juggler D . 


20.95 


Jumbo Jet Pilot R 


3a-30 


Kayos 8KC D 


24 75 


Keys oi Acheron 32KC,D 


15 90 


KidGndl6KCD 


20 95 


King Arthur s Heir C 


1590 


King Arthurs Hen 32KD 


20 95 


Labynnth 16KC/32KD 


211,95 


Legionnaire 16KC . 


24 /5 


Letter Perfect 24KR ,145,00 


Letter Perfeci 24KD ,110,00 


Leltetman 16KC , 


17 75 


Lencrman 32KD 


17-76 


LosI Colony D 


20.95 


Lunar Lander 24KC 


10 /5 


Lunar Lander 32KD 


16-00 


Macro Assembler & Text Ed 32KD 70 00 


MadNetler 16KC/D 


24.75 


Mail t^ergc, Ulilily 16KD , , 
Master Type 32KD , 


20.95 


28-90 


Microsoft Basic 32KD 


70.00 


Miner 2049Br 16KR 


36.50 


Mesile Command KKR 


2S.4b 


Monster Maze ;6KR 


28.90 


Moiloc's Tower 16KC 


15-90 


Musk Composer R 


32 60 


My Fit5t AlphaWt 24KD 


27.15 


Nautilus 32KC, D 


24, /5 


Number Blast 16KC 


12 40 


Number Blast 24KD 


12,4(J 


Odin 4SKD 


35,50 


Outla*.. Homii^er 24KC 


17.75 


Outlaw/ Howitzer 24KD 


17.75 


Pac Man SKR 


34.75 


Pacific Coast Highway IbKC.'D - 


20-95 


Picnic Paranoia R 


■Xi.m 


Picnic Paranoia IfiKC'D , , 


24. /5 


Pig Pen D 


20.95 


Pilot iHomePackagel SKR 


61 85 


PinballD 


20 95 


Plfltterman 16KR 


28 90 


Pogoman 16KC D 


28,9(1 


Poker Soliloiie 8KC 


10 75 


Poker Solitaire D . , 


15,9(1 


Picpple 16KC.a2KD 


20,95 


Probe 1 40KD - - - 


Z7.60 




57.85 


Protector 11 R . . 


33.0fl 


Prorector II 32KC/D 


24, '/5 


Raster Blaster 32KD , . , 


20.95 


Rear Guard 1 6KC 


15.90 


Rear Guaw 24KD 


17.90 


Hcptilan 16KC,D 


24 75 


Rescue at Rigel32KC 


20 95 


Rescue atRigi-l 32KD 


2D-95 


Reverei 8KC 


1S.90 


Reven;! D 


20.97 


Ricochet 32KC 


15-90 



Ricochet 32KD IS 90 

SAM 8KD - 46 00 

Saga '1-'12 24KD 28 90 

Salmon Run 16KC 17 75 

Salmon Run 24KD ...17 75 

Sciam 16KC 19 25 

Sea Eon 48KD 20 95 

Sentinel ) I6KC 20 95 

Sentinel t 24KD 24 75 

Setpenilne D. 24 75 

Seven Card Slud 24KC 12 40 

Seven Catd Stud 32KD 12 40 

ShamusR. . . 33 00 

Shamus 16KC/D .24.75 

Shooting Arcade 16KC/D 20 95 

Sky Rescue 32KC 15 90 

Skv Rescue 32KD 17 90 

Shme R. 3300 

Slime 16KC. D 24 75 

Snappci D 24 90 

Snoopet Tiocps *1 D 33.00 

Snoopet Ttoops '2 33 00 

Space Invaders SKR 28-45 

Speedway BlasI D 20 95 

Slat Raiders SKR 34,75 

Star Wamor C 28 90 

Star Watrnoi 32KD 28 90 

Slarcross 32KD 2R 90 

Story Machine D , 24 75 

Submarine Commander R 3f( 30 

Sunday Golf 16KC 10 75 

Survival dI the Fittest R , 28 90 

Tanktics 24KC , , 17 0(1 

Tanktics 32KD 20 50 

TelelinkSKR- 23 15 

Temple of Apshai32KC/D, , ,28 90 

Text Wizard 32KD 70.00 

The Bnh of the Phoenix D . . . 15 60 
The Nightmare 32KD 20 95 

Time Wise D 23 IS 

Touch Typing 16KC 19 25 

Treasure CJucsi 16KC K) 75 

Twerps D 27 .511 

Upper Reaches olApshai32KC/D 16 90 
VC 40KD . 17 90 

Video Math Flash Cards SKC . 1 2 40 

Video Math Rash Cards 16KD . 12.40 
Visicalc iSpecial Pricel 32KD. 172 00 
War 32KD I7.9() 

Warlock's Revenge 40 KD 24 75 

Wijard of Wot 16KR 33 (Kl 

WaardofWorlbKD ZH 911 

Word Processor 48KD 116 25 

ZaxxonCD , ,28 9(1 

Zorkl32KD.. 28 9(1 

ZorklI32KD--- 28,9(t 

Zoiklll32KD . .28-90 



EASTCOAST SOFTWARE 

110 West Caracas Avenue 
Hershey, PA 17033 



Key 




IDi Disk 




iC-i Cassette 




IR) Rom Car 


itdge 



■ ( AlflHr ctJMPiJTtH im: 



Shi|>|)lni) I';. IS!!. 511 ntiti.t 

C.t).D. Adii All V.l.liti..i...l S2.5(> 

FntfiHil FWIAI'O Otdt-rs Wt- Ship 

Air M.iiL...Aiid 7";. Itl.S- Ciirreiisv OliWl 

_ No Mltiiitiiitti (Irdrr 

Vis.i-M.iilelcitill on -t hi-(k 
Priii'i Solijcd III C-limi<|i' 



MAII Y()IIK()KD1:H()KL All (717) 533-8125 




Afa/iy more tilles Qvaiiobte- 

We also corry a juf} tine o/ 
Appie Softixare. 



play random chords instead. Once you have 
selected your random low note, use the previously 
mentioned techniques to generate the other notes. 
Have you tried to play piano along with your 
Atari? If so, you may have found that they were 
not quite in tune with each other. It could be ex- 
pensive to tune your piano, so tune vour computer 
instead. Find a pitch value that sounds in tune 
with middle C on your piano (or other instru- 
ment). Then divide by M repeatediv to generate 
pitch values for higher notes, and multiply bv M 
to compute the lower notes. Remember, your 
pitch values must stay in the range from zero to 
255. Now use the table you have generated to 
replace the one given in the Atari BASIC Manual. 
You can start playing duets with vour Atari. 

Program 1: Major And Minor Chords 

10 DIM D (3) 

20 D ( 1 >=1 , 25992103 

30 D<2)=1 . 1B92071 

40 D<3> =1 . 49830706 

50 PRINT •■ ENTER PITCH 

F CHORD" ; : INPUT X 1 
60 IF Xl>255 THEN 50 
70 PRINT " ENTER 1 FOR 

R MINOR"; : INPUT Y 
80 X2=X1/D(Y) 
90 X3=X1/D(3) 
100 X4=Xl/2 

110 BOUND 0. XI , 10, 10:SDUND 1 
2, X3, 10, 10: SOUND 



OF ^OW NOTE I 



MAJOR OR 2 FO 



120 
130 

140 



BOUND 0, 

0:SOUND 

, 10 

FOR X=l 

FOR X=0 

X 

STOP 



X2, 10, 1 
3, X4, 10 



TO 
TO 



1000:NEXT 
3:S0UND X, 



0, 0: NEXT 



Program 2: Scale Generation 



10 

20 
30 
40 

50 
60 



70 

B0 

90 

100 

110 

120 

130 

140 

150 

160 

170 

180 

200 

210 

220 

230 

240 

500 

510 

520 

530 



IM D (2 
< 1 ) =1 . 
<2) =1 . 
RINT " 
SCALE 
F X >25 
RINT " 
I NOR, " 
"; : INP 
F Y = 3 
OSUB 5 
= X/D ( 1 
X=X/D ( 
IF Y = 2 
X=X/D ( 
X = X/D i 
X = X/D < 
IF Y = 2 
X=X/D ( 
X = X/D < 
STOP 
SOSUB 
FOR 1 = 
X=X/D< 
NEXT I 
STOP 
SOUND 
FOR Z = 
SOUND 
RETURN 



) 

12246203 

0S94630B 

ENTER PITCH OF LOW NOTE 
" ; : INPUT X 
5 THEN 40 

ENTER 1 FOR MAJOR, 2 FOR 
: PRINT " OR 3 FDR CHROMATI 
UT Y 

THEN 200 
00 

) : GOSUB 500 
Y) :BOSUB 500 

THEN X=X/D(2) 
2) : GOSUB 500 
1 ) : BOSUB 500 
Y) : GOSUB 500 

THEN X=X/D(2> 
1 ) : GOSUB 500 
2) ; GOSUB 500 



500 

1 TO 12 

2) : GOSUB 



500 



0, X, 10, 10 

1 TO 200:NEXT 

0,0,0,0 



We ARE Atari!™ 

]>few Jersey's Largest 
Retailer of Atari- Programs 
for 400/800 Models. Over 400 
Programs Available from 
More Than 60 
manufacturers... 
Send for or visit our store for 
our latest catalog. 

Only .32.00 (inciude5 posiafr,- and handling). Kully refunilahic ns a S2.00 
credil wiih your firsl purrhase! Mail check m mortev order payable lo 
Software Asylum lo: SoftKarc .■\svluni Caialng, 626 Roo.sevel) Avenue 
Carlerel, N.J. 07008 (201) 'J69-1900. 




Software 



626 Roosevelt Avenue 
Carteret, New Jersey 07008 



VLun. IOC. 



•«l '*^^ Board - $124.95 
§pcC»<** (With 16K trade-in) (NJ Residents add 
"Fast Chip" - $41.95 6% Sale.s T;i.x) 

We also REIVT computer games - call 
or send for details 

Atari® is a registered trademark of Atari, Inc. 




FIRST BORN IN 1978! 



the original & continuously updated 

CCA 
Data Managemeiit 




216 COMPUTl! MOV1M3 



Now Available For Atari Computers 
For Apple Computers 
ForCPM Based Computers 



$ 99.50 
150.00 
225.00 



Uses 



CCA Data Management System 



• Business 
Accoutiis Receivable 
Accounls Payable 
Inventories 

Billing 

Lists and Rosters 

• Home Phone Ltsis 
Budgets, Hobbies 



^ 



Features And Capabilities 

Long record lengitis 

Up to 24 fields per record 

Not Copy Guarded 

ASptia numeric ilen^s 

Numeric only items 

Add, update, scan. etc. files 

ID-Level sort ascending, descending, 

allows alphabetizing data file. 

• Contact your local deafer (or 
details or write us forourcatalog 



DIVISION OF CUSTOM EltCTRONICS. INC. 

SOFTW/ARE 

233 Exchange St., Chlcopn. Maiiaihusslli 01013 

U13I 592.4761 

MoHercord e. VISA Atctpted 

• 0*al«r And Oijirlbulof Inquiriel tnvifed 

• Clowd Moodoyi — Opien Doilf Til 530- Frldoyi 'Til B 




jf 



^nfHi^/tfiuftnui 







MidlZOOXL 
64-K CAU- 

eiODisc Drive CALL 

i -.010 Program Recorder INEW) S7900' 

I '035 PnnterlMgW) $4T0.0Q 

CX95 Numeric Keyboard S109.00 

! CX419 Bookkeeper Kil CALL 

! CX4eB Communicator Kit . . CALL 

j ATARI Soltware 

I CXL4025 Defender S39 00 

I RX8026 Dig Dug ' r.39-00 

RX8039 Eastern Front (flOM) iv44,00 

': CLX4027QIX '39.00 

RX8037 Stat Trux 139.00 

□X5049 Visicalc 515900 

I CAOlfiSSTecnnical Reference tsloles S29-95 

■ Thinl Parly Software 

; Miner 2049 CALL 

i 2axxon S27.9S 

j Eastern Front 1941 icassettel £29 95 

; Wizard ol War S30 00 

: Gorf S30IM 

• Frogger S30 00 

! ChopLilter S29 00 

j Apple Panic S23 75 

• Batia Buggies $2375 

, Submame Commander (ROM) S35 95 

i Jumt)0 Jet Pilot (ROMI 535,95 

i Soccer (ROM) $36.95 

: Gamester Footl>all .....CALL 

I SCOTCH maxell 

j Diskettes & Tape 

• SCOTCH 5. ■■ Single Sided S2695 

I SCOTCH 5 i" Double Sided $29-95 

; SCOTCH Tape C-10 (to! ollO) S24 90 

■ SCOTCH Tape C-30 (lot ol 10) $26 90 

: SCOTCH T- 120 VHS S9-95 

■ MAXELL5V Single srded S31.00 

I MAXELL6.- Double sided $39.00 

! MAXELL VHS Tape (SUPER PRICE] CALL 

■ We take TRADE-INS. 

i Call for your price. 



FMCTCn^JOTKRZED «TWOW 



I for fast delivery, send certified or cashier checks, m 

j money orders, or direct Hank wire frans!ers. Persona/ * 

I checks allow 2 lo 3 weeks to c}Bar Prices retlec! cash 5 

: dtscour^f and are subject to changB Add 2'c for 5 

; credit card purchases. Shipping— Software $2 St 

I Minimum. Hardware— call. foreiQh mqwrieS mviied ^ 

I —add 15% for shipping. Ohio rBs^de^^(s add 6.5% i 

I sales tax 5 



5485 Warrensville Center Road 
Maple Heights. Ohio 44137 

Call Toll Free 

1-800-482-7254 

In Ohio 216/663-2032 

Mon.-Sat. 10-6 EST 



FOR THE WONDERFUL 

WORLD OF ATARI 
400 & 800 SYSTEMS 

RCE ANNOUNCES, .. 

ifcCOMMANDER 2400:|; 

AN INVITATION TO AN 

EXCITING NEW DIMENSION 

OF COIVIPUTER CONTROL 

AND PROGRAMMING EASE. 




2400 WITH KEY PAD - 2400 STANDARD 

EXPERIENCE 

. . . The responsivfi feel of superbly crafted 

engineering under your fingertips. 

. . . The convenience and comfort of your own 

detachable professional keyboard system. 

, . . The beauty, elegance and natural warmth 

of wood. 

. . . The luxuriousness, softness and durability 

of fine furniture textured vinyl. 

... A combination of features designed to 

return the thrill of personal command to 

computing. 

FEATURES 

1. Exclusive and unique calculator circuit! 
Allows keypad to be switched into use as a 
standard rapid entry calculator. 

2. Detachable option allows easy disconnec- 
tion to store away while the youngsters play 
their games! 

3. User installable in minutes, no soldering 
required! 

4. Allows simultaneous use of BOTH 
keyboards! 

5. Keyswitches and components are top 
quality design and manufacture. 



THE COIVIIVIANDER 2400 IS AVAILABLE 
FROM S119.Q0TO S219.00 DEPENDING 
ON YOUR CHOICE OF OPTIONS AND 
COMES WITH A 10 DAY IVIONEY BACK 
GUARANTEE. OUR WARRANTY IS FOR 
6 MONTHS, BOTH PARTS & LABO R! 
SEND FOR OUR FREE BROCHURE AND 
FULL ATARI CATALOG! 

TO ORDER, CALL TOLL FREE 



(800) 547-2492 




536 N.E. "E" STREET 
GRANTS PASS, OREGON 97526 



A ATARI* A 

"Computers For People' 

FREE CATALOG! 

Wiilh an:y otder. or send 
Si OQrelundabio win 
yOLjf tifsiOfOOf) 

Over 1000 items 
foryour Atari. . . 

• Mosaic • PeECom 

• Broderbunfl •APX 

• Floklan #0313501! 

• Synapse WA I 

• On-Line •Alan 

• Hayes • Epson 

• Vi^icalc • Mo^o' 

Make Royal Your ATARI® Source! 

We handle Only Atari Compaiible hardware and 
software. , _ So we know *hat worVs bttl ! Send/or ot^r 

complete catalog. Only $J.OOfRefundabirml/i mar order/ 




INTRODUCING. . . 




■■Cui>r /IP 



ABK DISK 

$49.95 



The mos! user-friendly mail maintenance 
program available! Here are a few of the 
ouislandinti features. . . 

• New OS Ihat oflers (ewer 'crashed- 
disks'-True random access-Store 500 lo 
2000 names/addresses per disk, 

• Works on single or double density. 

• Automatic delete of duplicates. 

• Print a disk directory. 

• Official state abbreviations are built-in. 

• Make bact<-up copies. • t^^erge files 

• Searcti files •Sort files 

• Create sub-files • Print lables/file copy 

Lei "Super Mailer" speed your mail! 



Protective 
Dust Covers 

For ATARI 400/410 
800/810, PteasB specify. 




$8.95 



P^iise s&eciiy w^ich you A3nr 



Flip-N- 
Fllerw 

Available 
farbcfh tiiikj 
artd carrridun 



Smoke-Rray Acrylic. 

The very best way to protect 

your valuable soft ware! 

SoecilyDyi 
OiCari 




$29.95 



■ Fut ArcM^tAclJon 

■ IDGIh UiKhtnc L»ngwi»e« 

» IBKDIiliDrCaiHlli 



[■ [QRi Hova' Sofiw.irr' 




Excellent Graphics & Sound' 



Your Atari" Source! 







2160 W. lltfiSt. •Eugene. OR 97402 

Phone (503)683-5361 

.\fa\liTi ard — i 't\u — ^1 miTumf Fvprtrv, 



PROGRAMMING THE Tl 



C Regeno 



GRAPHICS 



"Graphics" or drawing pictures on the TI can be a 
lot of fun, and using graphics in your programs 
can really enhance them. The TI has 16 colors, 
and all 16 colors may be used at the same time on 
the screen, even with high-resolution graphics. 
Later in this column, I will discuss user-defined 
graphics characters. 

Video-Graphs 

First, let's briefly review the TI Video-Graphs 
command module, since using the command mod- 
ule is an easy way to see graphics on theTI without 
actually programming. You may see different 
random color patterns, or you may draw pictures 
on the screen using the arrow keys and a few 
function keys. You may save or load a picture on 
cassette tape. 

Because Video-Graphs was one of the first 
command modules produced by TI, the manual 
you get with your module may be written for the 
XI-99/4 console. There are some changes that are 
necessary for the module to work with the TI-99/ 
4A console. (By the way, if you have the TI-99/4 
console, be sure to use the overlay that comes 
with the module or ask Texas Instruments to send 
you an overlay. The overlay has all the colors and 
commands so you don't need to keep referring to 
the manual.) 

Make these changes for the TI-99/4A console. 
Instead of pressing ENTER, press the period key 
to return to the activity selection list. You will also 
need to press the period instead of zero to return 
to the main index lists. The comma key represents 
the color GRAY. To save a picture or to get to the 
TAPE options, press the semicolon key. To change 
colors, use the virgule/slash key. 

The "Patterns" option presents three different 
random graphics demonstrations. STOP a picture 
by pressing N. You can't change colors while a 
picture is stopped. To restart the picture, press 6. 
While a pattern is going, you may change colors. 
Let's say you are looking at pulsing lights and 
want to change all the white sc]uares to magenta. 
Press/ then M thenO. 

218 COMPI/ni Mov«83 



The "Pictures" option presents four different 
ways you can draw on the computer. Mosaic and 
Sketchpad are like using a pen directed by the 
arrow keys. Color Life is designed to be like the 
venerable computer game "Life," which repli- 
cates cells according to strict rules. Building Blocks 
has several shapes at the bottom of the screen. 
You may move the cursor to the shape yeiu want 
for your picture, then press Y for the pen and 
move the shape up to your picture. Again, you 
may change colors by pressing / followed by the 
present color and then the color desired. 

Programming Your Own Graptiics 

Think of the screen on your monitor or television 
set as a rectangle divided up into 24 rows and 32 
columns. To graphically place a character on the 
screen, you specify the row number, the column 
number, and the character number - the ASCII 
code number of the character you desire. You 
may also specify a number of repetitions. CALL 
HC'HAR(8,5,657) will start in row 8 and column 5 
and draw character number 65, which is the letter 
A, seven times horizontally. CALL VCHAR(12, 
14,66,9) will draw the letter B nine times verhcally, 
starting in row 12 and column 14. 

If you don't want to draw a picture using A's 
and B's or the other letters and symbols available, 
you can define your own high-resolution charac- 
ters. Each square in the 24 x 32 rectangle can be 
divided up into an 8 x 8 square, and each dot in 
that 8x8 square can be turned on or off- colored 
in or not. By specifying with code numbers which 
dots you want on and which you want off, you 
can define your own graphics character and then 
place it on the screen. 

Here is an example. I want to draw a small 
triangle. The dots in the 8x8 square are colored 
in. The next step is to divide the square in half so 
that there are columns of four scjuares on each 
side. Now, working left to right and downward, 
figure out the hex code for each pattern of four 
squares. In the first row, 0000 is and 0001 is 1 . In 
the second row 0000 is and 001 1 is 3. Continue 



down the rows. The code is 0103070F1F3F7FFF. 
In your program, you can define the character 
with a CALL CHAR statement, then place the 
character on the screen: 

200 CALL CHAR(128,"0103070F1F3F7FFF") 
210 CALL HCHAR(12,15,128) 

Line 200 defines character number 128 to be the 
colored-in triangle, and line 210 places that char- 
acter on the screen. You may either redefine one 
of the existing characters (numbers 32 through 
127) or use numbers from 128 to 159. If I had re- 
defined the letter A (character 65), every time I 
print A on the screen you would see a triangle 
instead of an A. 

200 CALL CHAR(65,"0103070F1F3F7FFF") 
210 PRINT "A CAT" 
220 GOTO 220 



Program 1, "Defining Characters," allows you to 
design a graphics character. You will see a large 
square which has been divided up into an 8 x 8 
square. Use the arrow keys to move the cursor. 
Press F if you want the space filled in; press the 
SPACE BAR if you don't. Press ENTER when you 
are finished with your character. The computer 
will go through to compare the patterns of on and 
off dots and will print the code values, then an 
actual-size character will be placed on the screen 
so you can see what your character looks like. 
The definition is then repeated in a string form 
so you may copy it and use it in your own 
programs. 

After the character is defined, you have the 
option of modifying it, defining a new character, 
or ending the program. If you choose to modify 
it, the character will reappear, and you may alter 
it in any way you wish. 

Character 97, "a", is defined as an open 
square □, and Character 98, "b", is defined as a 
filled square ■ (lines 200-210). When the 8x8 
square is drawn on the screen, it is done by print- 
ing "aaaaaaaa" eight times (lines 420-440). 

The hex codes are read in as data (lines 120- 
170). H$(1, 1) is the pattern of blank or filled 
squares, and there are 16 patterns. H$(I,2) is the 
corresponding hex code number or letter. The 
flashing cursor is red so you can tell where you 
are on the pattern you are designing (lines 180- 
190). CALL GCHAR(X,Y,C) determines what 
character number C is at row X and column Y. 




Program 2, "Bull," is a 
graphics demonstration program 
that illustrates user-defined, 
high-resolution graphics. Lines 
130 to 340 define graphics 
characters. Lines 350-460 draw '^ 
the bull's head on the screen by printing redefined 
characters. Lines 470-530 place more graphics 
characters on the screen. (George H. Sunada of 
Logan, Utah, was the artist of the original Utah 
State University "Aggie bull.") 

A later column will discuss how to use the 
CALL COLOR statement and how^ to plan color 
sets. 

Program 1: Defining Characters 



100 

120 

130 
140 
150 
160 



170 

180 

190 

200 
210 
220 
230 

240 



260 
270 

280 
290 
300 
310 
320 
3 30 

3 4 
350 
360 

37 
3B0 
390 
400 

4 10 
420 
4 30 
440 
4 50 
460 
470 
480 
490 
500 
510 
520 



REM 

DIM 

FDR 

READ 

NEXT 

DATA 

, ab a 

B ^ 8 ■ 

DATA 

, bbb 

CALL 

CALL 

) 

CALL 

CALL 

CALL 

PRIN 

ER" 

PRIN 

RE" 

PRIN 

RE" 

PRIN 

PRIN 

D" : : 

IF < 

FOR 

FDR 

IF S 

NEXT 

C* = H 

PRIN 

FOR 

IF S 



NEXT 

C* = H 

PRIN 

NEXT 

GOTO 

FOR 

PRIN 

NEXT 

X = 16 

Y = 6 

CALL 

CALL 

CALL 

CALL 

CALL 

IF S 



DEFINING CHARACTERS 
H* < 15, 2> 
1=0 TO 15 

H* ( I , 1 ) . H« C I . 2) 

I 

saAa , , aaab, 1 , aab 
a, 4, abab.5. abba, 6, 
baab , 9 

baba,A,babb,B.bba 
a, E, bbbb . F 

COLOR (13.9,1) 

CHAR ( 123, "FFFFFFFFFFFFFFFF" 



a , 2 , a a b b , 3 
abbb,7,baa 

I a , C , bb ab , D 



CHAR <97. "FFBISISI 
CHAR (98, "FFFFFFFF 
CLEAR 

T "DEFINE A GRAPHI 

T : "PRESS F TO FI L 

T "PRESS SPACE TO 

T "PRESS ARROW KEY 
T : "PRESS ENTER WH 



818181FF" ) 
FFFFFFFF" ) 

CS CHARACT 

L THE SOUA 

CLEAR SDUA 

S TO MOVE" 
EN FINISHE 



K-50) + ( K=0) THEN 420 
1=1 TO 15 STEP 2 
L=0 TO 15 

EG* ( D*, I , 1 ) =Ht (L, 2) THEN 330 
L 

* (L, : ) 

T "t3 spaces: ";C*; 

L=0 TO 15 

EG* (D*, I + l , 1 ) =H* <L, 2> THEN 33 

L 
t f L, 1 ) 
T C* 

I 

450 
1=1 TO 8 
T " <.Z SPACES>aaaaaaaa" 

I 



SOUND (150, 1397, 2> 
GCHAR ( X , Y, C) 
K E Y ( , K , S ) 
HCHAR ( X, Y, 128) 
HCHAR ( X, Y, C) 
:& THEN 490 



Mav1W3 COMPUTI! 21P 



530 IF K=13 THEN 76f3 003C4582 , 000 610304 08 1 020E . 7FC 

540 IF K=7a THEN 740 130 DATA C0303F080402, 00008768 1 1 008 

550 IF K=32 THEN 720 , 00009060 1 2473S0 4 , 00040^07030303 

560 IF K<>6S THEN 600 07 , 000000008 0C0E0F , E0F FFFFFFFFFF 

570 IF Y=13 THEN 470 FFF 

580 Y=Y+1 190 DATA 1 02F FFEFFFFF AFC . 054 89020C0 

590 BDTO 480 8 . 000003030 1 I 1 0E , 00a080000CF 3 , 07 

600 IF K<:;33 THEN 640 0F3F 2F 2T 1 D06 02 . F 0FCFFFFFF F F 1 F0D 

610 IF X=2Z THEN 470 200 DATA 0000F FFFFFFFFFFFF , 0F 1 FFFFFF 

620 X=X+1 FFFFFFF, FCFCFCFCFCFCFCFC. 7F7F7F3 

630 GOTO 430 F 1 F 1 F2F2 , FFF FFFFFFCF0C . FCF9F A0D 

640 IF K<>8:. THEN 680 210 DATA 7080384483 10202 1,03300 10204 

650 IF Y=6 THEN 470 040402 , 4 3SC30404 08 1 3232 , 0E 1 66EBF 

660 Y-Y-1 7E, FFFFFFFF0 F0301 , F8F0F0E0C08 

670 GOTO 480 220 DATA 0000000 1 06040E0F , 20204 1 8307 

^^^!. l^ ^['■''^'^-^.^'^.^A'^J^ 1F7FFF, 008000a0BCFFFFFF. 0000806A 



690 IF )( = 16 THEN 470 



7FFFFFFF.2224455EFFFEFFFE 



700 X-X 1 230 DATA 1 FD0379e5030 1 00 , 84B42424 24 

710 GOTO 430 1C0101 . 0C0S3040809020C, 0080707C3 

720 CALL HCHAR(X,Y,97) ^3^ j P ^ ^ ^ ^^^^j g, ^ j, 3^3^^^^^ 

730 GOTO 470 

740 CALL HCHAR ( X , Y, 98) 

750 GOTO 470 

760 CALL SOUND ( 150, 440, 2) 

7 7 0*="" 

780 FDR 1=1 TO 8 

7 9 C « = " ■' 

300 FDR J=6 TO 9 

ai0 CALL GCHAR ( I +15, J , C3 

820 C* = C*!(CHR* <C) 

830 NEXT J 

940 GDSUB 1050 

850 CALL HCHAR ( 1 + 15, 1 6 . ASC < 01 * 1 ) 

360 D« = D*SiDl* 

870 C%="" 

88 FDR J=10 TO 13 

890 CALL GCHAR ( 1+15, J , C) 

900 C* = C«?<CHR*(C) 439413,204040303, 7F7F3F3F3F1F1F0 



240 DATA 3B300E8! 406, 000000S0C020100 
C,1F1F3F3F7F7F797,FFFFFFFFFFFCFA 
FD, FEFFFCFCFB58810B, 74 9C200SA8F8 
FCFC 

250 DATA 804040402020401003, 1F0F0F0F 
070707E7,070 30 1,FFFFFF7F,F4E9CB3 
30F070707, 1 7FFFFF9FDFCFEFE 

260 DATA 0F00031SFCFCFCFC, F8C8070060 
906,38DS90 137C94E407,FFFFFFFEF09 
0909, FFFFFF7F3F1F272, FFF FFFFFFFF 
CF3 

270 DATA 0303030301010101 . 7F7F7DF8E0 
FFFFFF, 07 070301010 10303, FFFFFFCF 
CFCEFCFl , 9090A0A06040C09, 202020 
202020202 

280 DATA FEFCF8F0E0C0C091 , 1010202040 



9 10 NEXT 

920 GOJUB 1050 



F,FCFSF0E0E0E6FFFF,00 00 1F2 05F34C 

7E 



930 CALL HCHAR (1+15, 17, ASC(Di«) ) -'^' DATA 0404a484a0C0F3FF , 00000000C0 

940 D« = D*S<D1* 20101 , 1202020204040308, 0F0F07070 

950 NEXT I 70737C7, FFFFFFB3S080F0FF, E0E0C08 

960 CALL CHAR(136,D*) 000003FFF 

970 CALL HCHARC'® -^0 136) 300 DATA 7F7F7F3E 1 C0080F , 303000 1 3 1 C 1 

980 PRINT : ■■DEFINiTIDN'"= " : D* E3F7E , 1 1 0202040808038 , FFFF3F3F3 

990 PRINT :: "PRESS 1 TD MODIFY" F3F 1 F 1 F , FEFE FEFCF0F 2F 1 F , 0F0F , FF7 

1000 PRINT "<:6 SPACES] 2 TO START OVE F,FFF3 

R" 310 DATA F0E, 0730402018050381 . 00E040 

1010 PRINT "{6 SPACES] 3 TO END PROGR 808 , 42 22 1 20A06020 1 1 . 86463A0 1 , 80 

AM" ; 00000003050505, 000003FC, 408 

1020 CALL KEY<0,K,S) 320 DATA 080903 10 10 10202,08080404040 

1030 IF (K=49) + (K=S0) THEN 220 40404 , 000000S04020 1 1 , 000007080 A 

1040 IF K=51 THEN 1110 ELSE 1020 0A04 , 0333428003 1 0204 . 0E70800 1 020 

1050 FOR L=0 TD 15 C106 

1060 IF C$=H* (L, 1 ) THEN 1090 330 DATA 30004020 10 10102.80010200808 

1070 NEXT L 0800, A0100F , 0001 063BC, 8030407307 

1080 L=L-1 , . 4040S030S0S030B , 308080S0BE51 3E2 

1090 D1*=H*(L,2) 340 dajA 000007182020404,00002010000 

1100 RETURN 00001 

1110 PRINT :: 350 pRINT TAB(6);"#* ■/.?<'()« +," 

1120 END 3,5,0 PRIMT TAB(6);"!-./ 0123456" 

370 PRINT TAB (6) : "789: ;< =>i?" 



Program 2: Graphics Demonstration 



380 PRINT TAB <S) : "S)ABCDE FGHIJK" 

120 CALL CLEAR 390 PRINT T AB < 5 ) ; " L I 1 MNOP f 3 SPACES>D 

130 FOR C = 33 TO 140 ! ! 5 , " 

140 READ C* 400 PRINT TAB <6) ; "RSTU I VWX#YZ CS" 

150 CALL CHAR(C,C*> 410 PRINT TAB(S);"\':6 " _ ' a " 

160 NEXT C 420 PRINT TAB(9):".'I6 \bcd" 

170 DATA FFFFFFFFFFFFFFFF, , 0001070F1 430 PRINT T AB ( 9 ) ; " e ! -f gh i j " 

F3F7F7F, 40C08000000080S. 00000000 440 PRINT T AB < 9 > ; " t? ' 1 mn op " 

220 COMPUTE! Mov1983 



p 

p 

F 

R 

Ct C 

N 

D 



52 



20, 
D 



10, 
-.0 D 



54 



1 . 1 
G 
E 



RIN 

RIN 

OR 

EAD 

ALL 

EXT 

ATA 

1 ,2 

20, 

126 

ATA 

9, 1 

20, 

134 

ATA 

19, 

39. 

,32 

OTD 

ND 



T TAB ( 10) ; "q ! I ! r " 

T TAB ( 1 0) ; "5 tLiv " : : : : ; 

1=1 TO 25 

X , Y , C 

HCHAR ( X , Y, C) 

I 

18, 17, 117, 18, IB, 120, 19, 17, 1 
0, la, 122, 19, IB, 123, 20, 19, 124 
20, 125, 1 

18, 20, 127, 17, 20, 128, 17, 19, 1 
8, 11 , 130, IS, 10, 131, 19, 11, 132 
11,125,2 

19, 10, 13 3, 20, 9, 135, 20, 8, 136 
a, 137, 18.8. 138. 17, 8, 139, 17. 9 
17, 10, 14 

540 




Gear Plastic$795* 



DUST COVER f t^^„rr 

Fiis staridard keyEwMrd and speecti syninesi?er 

Single Cassette Cables for Tl Camputflrs 

Casserie Cable C MOO $1395 

BS232FlalRibMnC-20IO5tl $24.95 

BS 232 Fiai Y Ifrmiefsl C-2020 5ft $49.95 

RS 232 Modem C-2030 511 $24.95 

RS 232 Flal Y {Ptinier-Moderal C-2040 5lt. $49.95 
T|.PI0FlalCentronicsC-20bD5tt. $34.95 

PIO Flat Cenlronic5C-2060 511 $34.95 

Guaranteed 90 days against workmanstiip defects 
Repairable at tow cost, Inquire about cuslomhzed or 
nard-to-lrnd cables. Sdd $2 stirpping and handling, 
■fiorida residents add 5% sales lax. 
Dealer Inqulrlei Invlteii. 

- ~ inr, 

3550 S Washinglon Ave., DepI, A 
Titusville. FL 327S0 • 1305) 268-4007 






ATTENTION 

TEXAS INSTRUMENTS 
TI-99/4A 
OWNERS 

We have huntiretis of 3rij patly Indepen- 
dent software programs on cassette and 
disk ready to run on your TI-99/4A. 
Games, business, and educational 
programming at discount prices as low 
as SB. 95 ea. Plus all Tl hiardware and 
software at incredibly low, low prices. 
Including ttie new TI-992 and CC-40 
computers. We also tnave dust covers, 
fieavy duly joysticks withi Tl adapters, 
and many more accessories. Call or 
write now for a FREE listing. We sfilp 
your order U.P.S. thie same or next 
business day to Insure fast service. Visa 
and MasterCard accepted (NO service 
charges) or C.O.D, Is okay. 

THE MUSIC WORKSHOP 

59 E. Tioga St. 

Tunkhannock, PA 18657 

CALL 1-717-836-4522 



TI-99/4A 






NEW FROM COMPUTE! 



PROGRAMMER'S 

REFERENCE 

GUIDE 

FOR THE TI-99/4A 



by C. Regena, 
COMPUTE! Columnist 



Contains over 40 programs! An indispensable guide to 
unrlerstandingyour TI-99/4A. Everything you need to know 
about: learning BASIC, editing, variables, grapliios, music, 
speech, mathematical functions, using files and arrays, 
sorting, conserving memory, and much more. Useful for 
everyone from beginners to experienced programmers. 

KESERTTE YOUR nRST EDITION TODAY! 

YES! Send me a copy of the Programmer's Reference Guide for 
the TI-99.'4A. 

$12.95 (plus SS shipping/handling) check or money order 

enclosed. 

Charge my □ VTSA D MasterCard □ American Express 

Acct. # Exp 



Prepaid orders only. All orders must mclude S2 S/H. 

Name 

Address 

City/State-'Ztp 



COMPUTE! Books • P.O. Box 5406 • Greensboro, NO 27403 
Please allow 4-6 weeks lor delivery- 



COMPUTE! 
Subscriber Services 



Please help us setve you better. If you 
need to contact us for any of the reasons 
listed below, write to us at: 

COMPUTE! Magazine 

P.O. Box 5406 
Greensboro, NC 27403 

or call the Toll Free number listed below. 

Change Of Address. Please allow us 
6-8 weeks to effect the change; send 
your current tnoiling label along with 
your new address. 

Renewal. Should you wish to renew your 
COMPUTE! subscription before we 
rennind you to, send your current mailing 
lobel with payment or charge number 
or call the Toll Free number listed below, 

New Subscription. A one year (12 month] 
US subscription to COMPUTE! is S20 (2 
years, S36; 3 years, S54. For subscflption 
rates outside tfie US, see staff page). 
Send us your name and address or call 
the Toll Free number listed below. 

Delivery Problems. If you receive dupli- 
cate issues of COMPUTE!, if you experi- 
ence lote delivery or if you tiave prob- 
lems with your subscription, please coll 
the Toll Free number listed below. 



COMPUTE! 
800-334-0868 

In NC 919-275-9809 



Paill 



Visiting The 
VIC-20 Video 



Jim Butterfield, Associate Editor 



hi zvhidi llic trnzvler discovers a new way ofvieiviug 
the computer's memory: through a video chip. This is 
the first of a multi-part scries about the structure and 
uses of the VIC's video chip. 



If we want to put the VIC-20 video chip to work, 
we must learn to see things from its standpoint. It 
sees the computer memory in a way that differs 
significantly from the way the processor chip sees 
it. Let's look at what the video chip sees: 



Video 

Chip 

Block 

Number 




^,v^ V 

/ f -^^ ft 






/ Ucj U ^(, 

I RAM / 




ihfiM 



3481(1 



Memory 
Address 



How the video chip sees memory. 

The video chip sees only the memory shown 
above. Even if you have expanded your computer 

222 COMPUIH May 1963 



to include lots of extra RAM above address 8191, 
the chip can't see it. The chip sees onlv the char- 
acter ROM, in blocks 0, 1, 2, and 3; and the lowest 
8K of RAM (in blocks 8 to 15). Blocks 4, 5, 6, and 7 
would look at the Input/Output area, but take my 
advice: don't do it - no good will come from these 
addresses. 

What The Chip Wants 

The video chip wants to dig out two things from 
memory and deliver them to the screen. It wants 
to look at "screen memory" - usually the charac- 
ters you have typed. On a minimum 5K VIC, that's 
block 15.5, which corresponds to decimal address 
7680 or hexadecimal lEOO. Did I mention that for 
screen memory, we can look at "half blocks"? It 
makes sense, since only five hundred odd charac- 
ters are needed to fill the screen. 

By the way, the official name for screen mem- 
ory is the "video matrix." Whatever you call it, if 
you POKE 7680,1 on an unexpanded VIC, you'll 
see the letter A appear at the start of the screen. 
Unless, of course, you're printing white on white, 
in which case you need very good vision to see it. 

The second thing that the chip wants from 
memory is the "character set" - instructions on 
how to draw each character on the screen. On a 
typical VIC, this will be either block for the 
graphics character set or block 2 for the text mode 
(upper- and lowercase). You can change it, but 
you'll usually want to stay with even numbers: a 
full character set including the reversed characters 
takes up 2048 bytes of memory. 

The official name for the character set is 
"Character Cells," although the term "Character 
Base" is coming into use. Whatever you call it, 
you can't POKE 32768,55 and expect anything to 
happen - the standard characters are in ROM and 
cannot be changed. They're carved in stone, or 
silicon, to be more exact. If you want to switch to 




with Smart ASCII 



A software parallel printer 
interface for the VIC and '64. 

l95 



$59 



THE FOLLOWING SECTION USES 
468 A NdtlED LHBEL ROUTINE. 
49B REWGLDP 
5M X-1 iGOSUB JGKE 
513 PRINT KiGOTQGLOP 

Send for a free brochure 
describing our other quality 
products. Dealer inquiries 



What's Unprintable? Cursor movemenls and ottier 
special control commands! Your parallel printer can't LIST 
these from the VIC or '64. 
Why? Because the Commodore graphics representing these 
commands are not found on most parallel printers, and these commands 
often cause your printer to jump into Bold, or go "off-line", etc. 
SOLOTION? Smart ASCII! (Say ask-ee.) This new software interface 
converts your user port into an intelligent parallel port for most popular printers 
(Epson, Microline, Smith-Corona, etc.). Smart ASCII provides 3 print modes: CBM ASCII for 
listing, TRUE ASCII for text, and TRAMSLATE. TRANSLATE is smart! It intercepts printer 
output and translates control commands into helpful text abbreviations. No more printer hang-ups 
and complete, readable listings! 

How about Word Processing? Enjoy faster, letter-quallty printing with low-cost parallel 
printers. Compatible with most applications programs: WORD PRO® QUICK BROWN FOX': 
MICRO SPEC ACCOUNTING, MAIL-LIST, WRITER'S ASSISTANT, etc- 
Flexible? You bet! Works with any size VIC or the '64: has 3 print modes; for "Centronics' 
protocol parallel printers: relocatable software for special programming needs: programmable 
Device"; and, you can copy to disk for quick loading. Complete with connecting cable 
and instruction book. On cassette. 



invited. 




MIDWEST 

MICRO associates 



PO BOX 614S, KANSAS CfTY, MO 64110 



ORDER DESK:{Orders only!) 

(816) 254-9600 

Technical support (816) 921-6502 



MAIL ORDER: Add S1.2S shipping and 
handling (SISO (or C.O.D.); VISWMasleroard 
add 3% (canj# and exp. date). MO residents 
add 4.6°.'« sales tax. Foreign orders payaWe 
U.S.S, U.S- Bank ONLY; add S5 shpdindlg. 




ANNOUNCING THE 

WANNA KNOW A SECRET? ri^miSfh 



WORD PROCESSING Full capabitlty word processing. Word-oriented— nol a 
ime editor. Menu-driven, For VIC: TOIL TEXT 2.0 $25.00 

More powerful versions include foolftotes, headings, footing, keyboard input, special 
printer control and more. For ViC + 16K or 24K: TOIL TEXT 2.5 $35.00 

For C-64; TOTL TEXT 2.6 $40.00 
MAILING LIST and LABELS Easy editing, aLftomatlcally sorted, optimal non- 
printing data lir)e(s), browse and select functions. Menu-driven. 

For VIC or 64: TOTL LABEL 2.0 $20.00 
KEYWORD CROSS REFERENCE students and authors: keep track of 
reference notes and bibilographies. Quick reference by keyword. Requires printer. 

For VIC: RESEARCH ASSiSTANT 2.0 $30.00 
For C-64: RESEARCH ASSISTANT 2.0 $35,00 
TIME MANAGEMENT Keep trwM of activities by date (and time). Screen inquiry 
by date, person, project, 56 difierent isar chart formats availabfe. 

For VIC: TOTL TIME MANAGER 2.1 $30.00 
For C-64; TOTL TIME MAWAGER 2.6 $35.00 
BUSINESS ACCOUNTING Accounts receivable and payable. Inventory and 
expense tracking, prim invoices, statements, reports. Disk only. 

For VIC and C-64: Inquire tor price. 



TOTL Software for 

VIC 20* and COMMODORE 64* 

the best deal in townl 




All programs work wiln disk and'Of rape; adaptable lor 40 or SO coljmn 
formals and mosi primers VIC programs require minimum SK expansion 




A Revolutionary Mew 
Concept in User Support 
—A soft-sectored novelty 
pillow no serious computer 
user should be without. 
$25.00 including full 
documentation! 

Mail Orders: Send check or 
money order (Calif, residents 
add 6% sales tax) to: 

software inc. 



1555 Third Ave., Walnut Creek, CA 94596 
w!7 Call (415) 943-7B77 



(Be sure to specify mactime when ordering) 



'VIC 20 and COMMODORE 64 are trademarks of Commodore Business Macliines 



MgI¥1*63 COMPUTE! 223 



custom characters, you'll need to stage them in 
RAM and tell the chip which block to take them 
from. 

There's a third thing that the chip uses, but it 
doesn't come from regular memory in the usual 
way. That's the screen colors (the "Color Matrix"). 
This color information for each character comes 
through the back door, so to speak, and we won't 
worry about the details too much here. When we 
need to, we'll .set the color and assume everything 
will work. 

Architecture 

Looking at the diagram, we can begin to see whv 
the VIC does its odd screen switch when you add 
memory, hi the 5K VIC, the screen sits at the top 
of memory - and that's the highest address that 
the video chip can see (block 15.5). If we add 3K 
RAM expansion, the screen can stay where it is 
above the BASIC RAM area. But if we add 8K or 
more, the video chip can't see that high, and the 
screen memory must flip down to the bottom 
where it won't get in the way of your BASIC 
program. Which bottom, vou may ask? It turns 
out to be block 12, which is memory address 4096 
or hexadecimal 1000, even if the 3K expansion is 
in place. 

You can move this around yourself, of course, 
and we'll be doing that in just a few moments. 

The trick is mostly location 36869, which con- 
tains instructions on which blocks to use for screen 
and characters. We do it this way: select which 
blocks you want for each. Now, multiply the 
screen block (not including the .5 if you're using 
it) by 16 and add the character block. POKE the 
result into 36869, and the job's done. We'll need 
to do a couple of other things for sanity's sake, 
but that's the main job. 

The "half page" for the screen memory goes 
into location 36866; you invoke it by adding 128 to 
the "column count" if you want to go the extra 
distance. That means that under normal cir- 
cumstances (22 columns), you want to POKE 
36866,22 for an exact block number, and POKE 
36866,150 to nudge to the extra half page. 

An Adventure 

Let's do something useless, but fun. We'll move 
the screen memory down to address zero (that's 
block 8). We can't play with this area - too many 
important things are happening there - but we 
can watch interesting things in progress, like the 
timer and the cursor doing their peculiar things. 

First, the calculation. We want the character 
set to stay the way it is (block for graphics), and 
we want to move the screen memory to block 8. 
Eight times \6 plus zero gives 128. No half block, 
so 36866 should be 22. 

A preliminary step: let's make sure that we 

22^ COMPUH! May 1983 



don't print white-on-white by clearing the screen 
and typing: 

FOR J = 37888 TO 38911 :POKE J,0:NEXT J 

Ready? Here goes: enter POKE 
36869,128:POKE 36866,22. Press RETURN. No, 
we haven't crashed, but we'll have to type blind 
from now on. 

First, examine the fascinating busy things 
that are under way. The timer is working away in 
three bytes. At first glance, only one byte seems 
to be changing. The cursor flash is being logged 
and timed somewhat below. And if you start 
typing, you'll see a whole new series of working 
values coming into plav. Indeed, if vou can type 
blind, you might try PRINT 1234 + 5678 and watch 
the flurry of activity. 

If vou type a lot, the screen will start to scroll, 
and the display will start to vanish as the colors 
are rolled off the top. 

Restore everything to normal by holding 
down RUN/STOP and'tapping the RESTORE key. 

This has been a first exploration, but vou 
may feel that you understand better what the 
video chip is up to. Indeed, you may feel that vou 
have gained some measure of control. 

There's much more to be learned. This is a 
start. 
Copyright e 19S3 jiui BuHcrfield © 



NEW SOFTWARE RELEASES! 

You know your VIC is more than a game machine, and 
now you can prove it with these powerful applications 
programs direct from our International VIC-20 Users 
Group. 

OMIMIFILE — our powerful file manager to keep track 
of all your business or personal information. 
Only S15.95 

DRILLMASTER — our c|utz/drill educational system, 
complete with vocabulary and state capitals quizzes. 
Only $13.95. 

OMNITEST — both of the above. Use OMNIFILE to 
create your own DRILLMASTER quizzes on any sub- 
ject! Onlv S24.95. 

ALL PROGRAMS REQUIRE SK EXPANDER AND ARE 
A VAILABLE ON EITHER TAPE OR DISK. 

OfUIMIDEX — tape file manager allows fast forward 
fila location on tape. Only $1 2.95 for unexpended VIC, 

See these programs at your dealer or order direct from 
Software To Go. Also ask us about our users group, 
with services like an extensive catalog, free newslet- 
ter, and software loan library. 




1964 OAK RIDGE TURNPIKE OAK RIDGE, TN 37830 

6tS-482.9B92 

VISA AND MASTERCARD ACCEPTED 



COMPUTEi's 
Fiist Book Of VIC 



Authors: COMPUTE! Magazine v /ntroducrion 

contributors rKa«»— « 'Robert Lock 

Price: S 1 2 95 '^^'if'X °"f; letting started. 

«»••>. "* 'fi^ Story O/ The Vir 

OnSale: Now " compter Genes, s Michael S.Tomczyk 

Finally, it's VIC'S turn! ZoST.ScuS''^^'^^'" ■- ^-»^>^-k,nHene,/Dav,dTho.nbu.g 

Users of other popular personal 2* i^'ge Alphabet .,..' Jim Buttemew 

computers have been enjoying their f* us.ngAjoysnck .... oougFerguson 

COMPUTE! Boolcs: COMPUTEi's fd^')'^^'^ '"^"' °^^'<^"- °^"'' waimowg 

ft/5f Book OfPET/CBM ...the f/Vsf 46 Gan^epZlT ''''°'^' ^^'^e Bassman / Sa,omon Lederman 

0OO/C Of /ifar/ ...the Second Book Of Chapter Two- oi„»- '- °^^"^ Maimbera 

Atari Programming The PET/CBM ... « The .oys.ck c^on SorM^ar^^^r '^•' """for.. 

and others. :M 67 ZAPII ■ '"^'^^ ^^^^ Paul L Bupp /Stephen P Drop 

Now, there's a book devoted J|starrght3 Dubsaoggm 

exclusively to the Commodore VIC- 1% rn,^fr"^Z '.'.'.' °^^"^ '^- '^'^"f' 

20 computer: COMP^TE/^fy^r^o. CH^p^ ^^P,o„r ,■■•■■•■■■■■••■■■•■ '--pS^S 

fhe editors of COMPUTE- ?? ^TnX^?"^'^""""'"^ Techniques. 

The editors of COMPUTE! 97 Tram Vour PET To Run WC Proqrams ^^"^« '' McCallmer 

Magazine - the leading resource for 99 user input ^'""'^ Lyie Jordan 

the VIC-20 - gathered together the I°f /^monrze wayne Kozun 

best VIC-20 articles published since 109 ^r^^^'^TH " c ■■■■••'••.■ Amrhaic/azer 

thesummeron98Iandadded "^^S -n'^^^oLote " ' ^ ■■■■■■■■.".■■■.■.■.■..■:.::.''ra'r:::." 

some new material. The result is ' *5 Alternate screens ... Char/es Srannon 

more than 200 pages of valuable lit ^"^e*«eeping ; ' ; ' . j,m eutterfiew 

information - information that noes 127 A^nT^ f^"^ ^'"" The Easy way"""" ^.'^^'"^ ^'^'^'e'ffer 

the COMPU11! tradition, it is care- Getting The Most Out Of SOOO Bytes 

fully edited to be easily understood J^" ^^^y^'^y ^o '^'''oc ate vie Programs Stanley W.Berlm 

and useful for beginners and experts ,^ ' "" ^°'^'^°<''"ff' computf.fs , ^^^^ ^ , ^ ^^ 

alike f f^f P««^ Pour: Color And Graphics ""°°' 

COMPUTEI'S First Book Of VIC us U/fh1°''?^ ^"'^ ^^^'^f'°"^ " 

is spiral-bound to lie flat, and iSvifcofortr ''"'"^ ■■ ■••■■■■••■■■^^■-^■:::::.£rscS 

includes ready-to-type program |57 The Wmaow .' ' ' ' Charles Brannon 

listings and articles such as "The Cusrom Characters For The WC .' .' .' Charles Brannon 

Joystick Connection: Meteor Maze, " Chapter Five: Maps And Soef-if- •- °^'"'' '^"""^^'9 

"STARFIGHT3, " "Train Your PET To ] Jf "°^ ^° use The 656o wdeo mter/ace "^ "*' 

Run VIC Programs, " "Renumber lal Sr m'"^ ^"^ ^'^ '^^'p ' "^^'^ ^"^^" 

BASIC Lines The Easy Way " "High 1 89 Mer^'S^Z^.^pfg-l^^^^^^-^'-e ." . .' : oavtd Barton / JrerE:':; 

Resolution Plotting. " "Custom Char- Chapter Six- m^cmJL , ^"^ suiierr,eid 

acters For The VIC. " "VIC Memory - 1 95 tinymon r As^n \T '^"9wage. 

The Uncharted Adventure. " and "A 202 Buenng liNVMoSZTtilTr^VL'Jr vlf .n ^- '^'^"-f.id 

Simple Monitor For The VIC." 21 t mriox '^'^^^^'i ^a.anagh 

At only S 1 2.95, less than most 
computer manuals, COMPUTEi's First Book Of VIC 

\s among the best resources a VIC user can own. 

Available at computer dealers and bookstores nationwide. To order directly call TOLL FREE 800^334-0868. 
In North Carolina call 9 1 9-275-9809. Or send check or money order to COMPUTE! Books, P.O. Box 5406 
Greensboro, NC 27403. 

Add S2 shipping and handling. Outside the U.S. add S5 for air mail, S2 tor surface mail. All orders prepaid, U.S. funds only. 

COMPUH! 1983 



Part II: 



COLOR COMPUTER 

GENERAL- PURPOSE 

DATA BASE 



Jeffrey S Yohay 



This concludes a two-part tutorial and model program 
for creating data bases on the TII99-4A ami TRS-SO 
Color Computer. The model program is called "Video 
Movie Data Base Program" (VMDP), because it was 
designed to catalog and manage a collection of movies 
on videotape. Here the author discusses screen dis- 
plays and program structure, and presents tlie data 
base program itself. The Color Computer program re- 
quires 16K RAM memory and Extended BASIC. 

Before utilizing this data base manager, there are a 
few more details to explore. We'll pick up where 
we left off in March with a discussion of how to 
add new records. 

Adding A Record 

When you add a new record, the "add record" 
routine of the VMDP will prompt you for all of 
the information necessary to fill the 17 fields. Since 
the field lengths are all fixed (see Table 1), the 
"add record" routine will also display a left arrow 
at the point where the length of the input will 
match the length of the field. 

If you write over this arrow while answering 
an input prompt, your answer will be too big to 
fit into the field being filled. You should then back- 
space and start over, using abbreviations where 
possible. If you don't, your input will be larger 
than the field size and will be truncated. If your 
input is smaller than the field size, the field will 
be filled with blanks to keep the field {and the 
record) size constant. 

Note that vour answer to a field input ques- 
tion will be displayed (in its final length) after you 
press ENTER; so if your answer was truncated, 

226 COMPUTE! MOV 1983 



you'll see it on the screen immediately. You'll 
have to delete and reenter the record if the trun- 
cated data isn't correct. 

As I mentioned before, several of the fields 
contain a code that can be expanded by the VMDP 
into usable information. The "type of movie" 
field is a two-byte code that describes the movie; 
the code can be any of the following: 

CO - Comedy (or any light drama) 

DR- Drama (a good death scene qualifies) 

HI - History (war movies, costume dramas, 

etc.) 
HO Horror (Bela and Boris, or "Halloween 

XXIII") 
MU- Musical (that's entertainment!) 
MY- Mystery (from my favorite director, 1 

presume) 

The "commercials" field is a one-byte code that 

describes how you dealt with commercials when 
you recorded the movie: 

N - None (a pre-recorded tape, or a movie 
broadcast on non-commercial television) 

E - Edited (you removed them) 

F - Few (you tried for an "E" but fell asleep!) 

M - Many (you deleted a few, then decided it 
wasn't worth the effort) 

A - All (you weren't home, or you just got 
lazy) 

And finally, the "recording speed" field will vary 
depending on the video format of your VCR. VHS 
owners will put an S, L or E in this field, for SP, 
LP or EP recording speed. Beta owners will use 1, 
2 or 3 in this field, for Beta 1, Beta II, or Beta III 
recording speed. Beta owners might also want to 



change line 490 of the "add record" routine from 
"SPEED (S,L,E)" to "SPEED (1,2,3)" and line 250 
of the "display full-data" routine from "P VIEW 
TIME: " to "bViEW TIME: ". 

The rest of the fields are self-explanatory. 
You may have to do some thinking to fit a par- 
ticularly long name into the "title," "director," or 
"actor/actress" fields, but that shouldn't happen 
often (unless you haye a lot of movies like Abbotl 
and Costello Meet Dr. jekyll and Mr. Hyde). 

And filling the "approximate viewing time" 



memory locations in RAM will cause them to ap- 
pear on the screen in reverse video. Just add 1024 
to the desired "PRINT (a " screen location to get 
the correct memory address for the POKE. 

I have included some "screen prints" of the 
VMDP's main text screen displays: Figure 1 is the 
main menu. Figure 2 is a sample full-data output 
for a particular movie, and Figure 3 is a sample 
titles-only movie display. These figures will give 
you a good idea of how the VMDP displays will 
look on your screen. 



It's designed to display 

as mucli information 

in as little space 

as possible. 



and "approximate time remaining" fields will 
require some extra effort on your part. You'll need 
to make a chart of your VCR's counter number 
vs. recording time, or buy one of the commercially 
available ones (if there is one for your machine). 
Note that if the movie is the last one on a particular 
videotape, you can answer "EOT" (end-of-tape) 
to the "time remaining" question instead of cal- 
culating the few minutes remaining. 

Text Screen Displays 

The text screen of the Color Computer consists of 
512 bytes of RAM at memory locations 1024-1535. 
This allows for 16 lines of 32 characters, or 512 
characters total. 

It takes a lot of planning to use this text screen 
properly, since the small number of characters 
doesn't allow you to display very much informa- 
tion at once. So 1 designed the text screens of the 
VMDP to display as much information in as little 
space as I could. I also made ample use of the 
reverse video feature of the text screen (green 
letters on a black background instead of the usual 
black letters on a green background) to highlight 
various portions of the screen. Since lowercase 
letters are displayed in reverse video, you'll see a 
lot of PRINT output in lowercase in the program 
listing. 

You might also notice a lot of POKEs into the 
text screen memory area. Since there is no way to 
PRINT spaces or special characters (colon, comma, 
period, etc.) in reverse video, I wondered how I 
could do the highlighting I had in mind. Luckily, 
I discovered from the TRS-80 Color Computer Tech- 
nical Reference Manual that POKEing the ASCII 
value of these characters directly into the video 



■> Memory Requirements 



The program itself is 5211 bytes long, leaving 
ample room for movie data: lip to 60 movie records 
in a 16K computer, and up to 180 in a 32K com- 
puter. But this storage is available only if you don't 
reserve any RAM for graphics (which the VMDP 
doesn't need anyway). This means not reserving 
even one graphics page (1536 bytes). Since the 
Color Computer does not have a "PCLEAR 0" 
command to clear all the graphics memory for 
programs and data, you'll have to do it yourself. 
Before loading the program, type in the line: 

POKE 25,6: NEW <ENTER> 

This does the same thing as the missing "PCLEAR 
0" command. Then load and run the VMDP. If 
you forget to clear the graphics memory, the 
VMDP will remind you by generating an OM 
(Out of Memory) error in line 40 when it tries to 
CLEAR the string space for the movie record 
array. 

Note that I use a POKE to test for a 32K 
machine (line 40), then CLEAR the appropriate 
amount of string space for the available RAM. 1 
can do this because memory location 16384 
(16K + 1) will be 255 in a 16K computer (since it 
doesn't really exist), but will contain whatever 
you POKE into it in a 32K machine. 

Program Structure 

Table 2 shows the structure of the VMDP, and 
Table 3 is a list of the program variables. 

Line 40 reserves RAM for movie record stor- 
age as described before. Lines 50-80 display the 
main menu of program options and get the desired 
option from a two-character command. To check 
for a correct response and then run the desired 
subroutine, I used a technique to truncate every 
answer to one size and then compare it to a string 
of all the correct answers (CCS) that I previously 
defined. 

Lines 120-200 are global subroutines, i.e., sub- 
routines called from various places in the program. 
Lines 240-360 are the display routines, including 
"full-data" and "titles-only" displays of movie 
data as well as the "search and display" of a par- 
ticular movie. 

Mqv 1983 COMPUTE! ?27 



Lines 400-430 repeat the "full-data" and 
"titles-only" displays for a printer. Here is where 
you might want to use your own imagination to 
customize the program. Though I have a very 
capable printer (the NEC 8023), I hesitated to use 
any of its special features in these routines in order 
to keep the VMDP as general as possible. So feel 
free to add the control codes for your printer to 
enhance the printed output in any way you want. 

Lines 470-560 perform the "add record" and 
"delete record" functions. The "add record" func- 
tion will prompt you for all the data necessary to 
build a movie record. The "delete record" function 
will just find and delete an existing movie record. 
Note that there is no way to edit an existing record 
to change only one or more fields. I felt this would 
require too much memory to implement, and I 
wanted to keep the VMDP as small as possible to 
leave ample room for movie data in a 16K 
machine. 

Lines 600-690 are the sort routines. Using a 
Shell-Metzger sorting algorithm, I provided three 
sort routines (with many of the required program 
lines shared by all three) to sort the movie 
records: 

1. Alphabetically by title. 

2. Alphabetically by type and, within types, 
by title. 

3. Numerically by videotape number and, 
within videotapes, numerically by VCR 
counter number. 

You can sort the movie records whenever you 
want before displaying or printing the movie 
data. 

And finally, lines 730-770 perform all cassette 
I/O operations to load and save movie data files. 



Program 1: color computer Version 



40 



50 



Table 1 


: VMDP Record Format 


Position 


Length 




In Record 


In Bytes 

28 


Information 
Title of movie 


1-28 


29-32 


4 


Year of release 


33-48 


16 


Director 


49-64 


16 


Actor/Actress 


65-80 


16 


Actor/ Actress 


81-96 


16 


Actor/ Actress 


97-98 


2 


Type of movie (code) 


99-100 


2 


Videotape number 


101-104 


4 


Start of movie (VCR counter number) 


105-108 


4 


End of movie (VCR counter number) 


109 


1 


Reserved for future use (now "/") 


110 


1 


Recording speed (code) 


111-113 


3 


Approximate viewing time of movie 


114-116 


3 


Approximate time remaining on tape 


117 


1 


Reserved for future use (now "/") 


118-123 


6 


Date recorded 


124-125 


2 


Channel 


126 


1 


Color? 


127 


1 


Commercials (code) 



P0KE16 3B4, 0; IFPEEK ( 165B4X >OTHENCL 
EARS 132: DIMR* ( 60 > ELSECLEAR24396 : DI 
MR* i ISO) 

CC*="DA DT DS PA PT AD DE SM ST SN 
LO SA '■ : CLS:PRINT39, "EmHEDIiai SE 



Table 2: VMDP structure 


Line No. 


Function 


40 


Tests for memory size and CLEAR space for data 


50-80 


Display main menu and get command 


120-130 


Expand type of movie code (subroutine) 


140-180 


Assign data fields to variables (subroutine) 


190-200 


Search for a movie record (subroutine) 


240-280 


Display full data for all movies 


290-330 


Display titles only for all movies 


340 


Searches and displays full data for any movie 


350-360 


Display subroutines 


400-420 


Print full data for all movies 


430 


Prints titles only for all movies 


470-550 


Add record for new movie 


560 


Deletes record of an existing movie 


600-690 


Sort movies by title, type, or videotape 


730-740 


Load data file 


750 


Saves data file 


760-770 


Load/Save subroutine 



Table 3: 


VMDP Variables 


A$ 


Answer to question 


A1$,A2$,A3$ 


Actor/ Actress #1, #2, #3 


C,C$,CC$ 


Main Menu command variables 


CHS 


Channel 


CLS 


Color? 


CMS 


Commercials code 


CNS 


VCR counter numbers 


DI$ 


Director 


DT$ 


Date recorded 


F$ 


Data file name 


1,11,12 


Loop counters 


11,12,13,14 


Shell-Metzger sort cou nters 


IL,IO,IP 


Line and page counters for display and print 


IR 


Number of records counter 


K$ 


Input from keyboard 


L 


Add Record field length 


MP 


Maximum number of pages in titles-only 




display 


N 


Shel 1-Metzger sort variable 


Q,Q$ 


Add Record field input question variables 


R$,RS() 


Individual movie record and movie record 




array 


RP 


Add Record input field location in movie 




record 


S 


Add Record field input question screen 




location 


S$ 


Print output spacing variable 


SP$ 


Recording speed code 


T$ 


Title to search for to display or delete 


TN$ 


Videotape number 


TY$ 


Type of movie code 


VR$,VT$ 


Remaining time on tape and viewing time of 




movie 


X$,X1$,X2$ 


Subroutine call variables 


w 


Loop Variable to pause program 



228 COMPUni May 1983 



BIIl"iP0KE1042,32:PRrNT341 , "GHHJHIIB 

B aSaiaS" :POKE1073,32:PRINT373, "CO 

MMAND"lPRINT"EaaaHiSS <DA> ALL 

t3 SPACES><DT> TITLES": P0KE1127, 32 

sPRINTai37, "<DS> SEARCH AND DISPLA 

Y" 

60 PRINT" rarH:HJ:: <PA> ALH3 SPACESX 
PT> TITLES": P0KE1223,32: PR I NT: PR IN 
r- rsSTTP EEDT <AD> ADD{3 SPACES><DE> 
DELETE" : POKE I 283, 32 : PR I NT3297 , " < SM 
> SORT BY M0VIE"iPRINTa329, "<ST> S 
ORT BY TYPE":PRINTa3il , "<SN> SORT 
BY TAPE #" 

70 PRINT: PR INT" CanEaiSl <LD> LOAD <S 
A> SAVE" : PRINT34B9, "<QU> QUIT PROS 
RAM" ; : PRINT380, " "; : INPUTC* 

80 C»=C«+" ": C*=LEFT« (C*, 3) : IFC*="QU 

"THENCLSsENDELSEC=INSTR (CC*,C*)-1 

;IFC/3<>INT(C/3) THEN50ELSE0NC/3-t-lG 

0SUB24 0, 290, 340, 400, 430, 4 70, 560, 60 

0,600, 6 00, 730, 750: B0T050 

90 ' 

100 

1 10 

120 



130 
140 



150 



R*=R« ( 1D> :TY«=MID« (R«, 97, 2) : IFTY* 

="CO"THENTY*="COMEDY"ELSEIFTY»="D 

R"THENTY«="DRAMA"ELSEIFTY*="HI "TH 

ENTY«="HISTDRY"ELSEIFTY«="HD"THEN 

TY«= "HORROR "ELSE I FT Y*="MU"THENTY« 

="HUS1CAL"ELSEIFTY*="MY"THENTY«=" 

MYSTERY" 

RETURN 

A1*=MID*(R*,49, 16> :A2«=MID«(R«,65 

, 16) : A3*=MID« (R«,ai, 16) :DI*=MIDS< 

R«, 33, 16) : TN« = MID* <R«, 99, 2) :CN« = M 

ID4(R*,101,4>+"-"+MID«<R»,105,4) 

SP* = MID« <R«, 1 10, 1 ) : VT* = mD* (R*, 1 1 

1 , 1 ) +" : "+MID* (R*, 1 12, 2) I VR* = MID« t 



Figure 1: VMDP Main Menu 






>^1 DEOTAPE 


MO'.^I E 






DATABASE SYSTEM 






CQMMAMD"? 






DI SPI_<iiY 


<C.A> 


ALL 


<DT> 


TITLES 




■CDS> 


SEARCH AMD 


DI SPLAY 


PRINTER 


< PA> 


ALL 


<:pt> 


TITLES 


CHG Ol^Tt^ 


<AD> 


ADD 


<DE> 


DELETE 




<SM> 


SORT 


B^- r-iovi E 




<ST> 


SORT 


BV TVRE 




< SN ;■ 


SORT 


BY TARE « 


DATAFI LE 


<i_o> 


LOAD 


< S A > 


SA'-'E 




<G!U> 


QUIT 


PROGRAM 



Figure 2: sample Full-Data Display 




T I : The M 


ari Who K.n&i^) Too Mu c 


h 


YEAR: 1^3^ TYRE: MYSTERY 


STARRIMO : 


P&ter- Loi-r-e- 
Lesl i © BahK^ 
Edna Be=t 




DI RECTOR : 


A 1 -f r- ed Hi t c h .= oc k 




TAPE : 2 5 


C 05';'5— 1 1 25> SPEED: 


EP 


^ I EK T I ME 


: 1:25 TIME REM: 2 


: 45 


RECORDED i 


e -3-1.5-32 CHANNEL: 


1 ^ 


COLOR: SJO 


COMMERCIALS: EDITTED 


<m>e:xt paoe <cl>ast page <m> 


EN U 



Figure 3: sample Titles-Only Display 

T I : E;r i n g i n g Up Bsfc»>' 

YEJ=tR : i^-SS TYPE: COMEDY 



T I ; P r- -a n k le ri -s t ^ i n 

YEAR: l^-Sl TYPE: HORROR 

T I : It's a I'Jon der -f u \ L i + e- 
YEAR: I'^'^T TYPE: DRAMA 

TI : The- Man Who Kn e-w Too Much 
YEAR: 1934 TYPE: MYSTERY 

TI : Top Hat 

YEAR: I"? 3 5 TYPE: MUSICAL 

cr-;>E;<T page -cl^-ast page ■!:m>enu 



260 



270 



280 
290 

300 

310 
320 



330 
340 

350 



160 



170 



ISO 
190 



200 



210 
220 
230 
240 
250 



R*, 1 14, 1 ) : IFVR«="E"THENVR»="EOT"E 
LSEVR*=VR»+": "+MID* (R*, 115,2) 
DT*=MID« (R*, 1 18, 2>+"-"+MID« (R«, 12 
0,2>+"-"+MID*(R*, 122,2) :CH*=MID* I 
R*, 124, 2) :CL* = riID*{R*, 126, 1) : IFCL 
*="N"THENCL*=:"NO " ELSECL«= " YES " 
CM* = riID» <R*, 127, 1 ) : I FCM*= "N "THENC 
M»="NONE"ELSEIFCM«="E"THENCM»="ED 
ITTED"ELSEIFCM*="F"THENCM«="FEW"E 
LSEIFCM*="ri"THENCM*="MANY"ELSEIFC 
M*="A"THENCM«="ALL" 

RETURN 

CLS: PRINT341 , Xl«; " I :» iCiIi] tJ >M " : PQKEl 

071 , 32: PRINT396, "TITLE TO ";X2«:P 

R I NT 3 158, CHRIi (127) 

PRINT3128, ""; : I NPUTT* : T1i = LEFT« ( <T 

«+STRlNG« C2S,32) > , 28) : PR I NTS 130, T 

*: F0RI0=1T0IR: IFT« = LEFT* (R*( ID) ,2 

B) THENRETURNELSENEXT:PRINT5>192, " C 

E ailiJI EHannS" : PDKE1218, 32iPOKE12 

23, 32: F0RW=1T0 750: NEXT: RETURN 

' DsasaiEi Rf-i.i*j»tr.L=a 



ID=1 

GOSUB 1 20: CLS: GOSUB 1 40 : SOS 

INT"e3BCnnon?: ";A11i:PRINT 



2«: PRINTTAB C lO) A3*: PR I NT: 
[IHaanS: ";DI*:PRINT:PRINT 



;TN*; ■ 

VIEW 
VR* 
PRINT: 
ANNEL: 



< " ;CN«; " > 
TIME: ";VT*: 



SPEED: 
TIME 



PRINT"IISH!ia3MS: ";D 
" ;CH*: PR I NT "COLOR: 
COMMERCIALS: " ; CM* : GQSU 
K*=INKEY*: IFK*= " " THEN270E 
"M"THENRETURNELSEK=ASC (K* 
6ANDKO7S0R < K = 7 8ANDI 0= I R ) 
NDI0=1 ) THEN270ELSEIFK=78T 
+1ELSEIFK=76THENI0=I0-1 
B0T0250 

IP=0:MP=INTf IR/5> : IFIR/5= 
) THENMP=MP-1 

CLS:F0RIL=1T05: IO=IP»5+IL 
R THENeOSUB120:60SUB350:N 
eOSUB360 
K*=INKEY»s IFK*=""THEN320E 
"M"THENRETURNELSEK=ASC<K« 
6ANDK< >78DR(K = 78ANDIP = MP) 
NDIP=0)THEN320ELSEIFK=78T 
+1ELSEIFK=76THENIP=IP-1 
G0T03OO 

Xl*="ai3IHE": X2* = "SEARCH 
UB190: IFIO>IR THENRETURNE 

PRINT"IM1: ";LEFT«(R«,28) ; 
[aaS: "; MID* (R«,29, 4)TAB( 1 



UB350: PR 
TAB ( lO) A 
PR I NT "Em 
" UHiIm: " 
" ; SP*; "P 
REM: "; 

T*;" CH 
"SCL*; " 
B360 

LSEIFK*= 
) : IFK07 
DR(K=76A 
HEN I D= 10 



INT CIR/5 

: IFIO< = I 
EXT 

LSEIFK*= 
) J IFK07 
0R(K=76A 
HENIP=IP 



FOR" ! GOS 
LSE250 

:PRINT"B 
a > " SEES: 



MciyW83 COMPUTi! 229 



360 

370 
380 
390 
400 



410 



420 
430 



440 
450 
460 
470 



480 



490 



500 



510 



520 

530 



540 

550 
560 



"; TV* s PRINT: RETURN 
PRINT34B1 , "<N>EXT PAGE <L>AST PAG 
E <M>ENU" ; 5 RETURN 



S«=STR 
B120: B 
1 3 ) ; " T 
AR: "; 
Y*: PRI 
I A1*;S 
CTORi 
PRINT* 
; "COUN 
" ; SP« 
«; "TIM 
RDED; 
; "COLO 
; CM*: I 
,STRIN 
NEXT: R 
PRINT* 
TLE";T 
CHR* ( 1 
NT#-2, 
,29,4) 



ING* (4, 
0SUB140 
ITLE: " 
MID* <R* 
NT#-2, C 
«; A2*; S 
" ; D I * 
-2, CHR* 
TER: 
; "P" ; S* 
e REM: 
" ; DT«; S 
Rj " ; CL 
FI0/5=I 
B* ( 10, 1 
ETURN 
-2,STRI 
AB <34> " 
3) : FORI 
LEFT* <R 
; TAB (44 



32) : FORIO=lTaiR:GOSU 
: PRI NT* -2, STRING* (3, 
; LEFT* (R«, 2S> ; S»; "YE 
,29, 4> ; S*; "TYPE: ";T 
HR* < 13> ; "STARRING: " 
♦ ; A3*: PR I NT* -2, "DIRE 

( 13) ; "TAPE: "; TN*;S« 
CN*:PRINT*-2, "SPEED: 
"VIEW TIME: ";VT*;S 
; VR*5 PRINT*-2, "RECO 
«; "CHANNEL: ";CH*;S« 
«;S*; "COMMERCIALS: " 
NT ( 10/5) THENPRINT*-2 
3) 

NG* (2, 13) ;TAB(10) "TI 
YEAR"; TAB (45) "TYPE" ; 
D=1T0IR: G0SUB120:PRI 
«, 28) ; TAB <34) MID* (R* 
) TY*: NEXT! RETURN 



Aos/DEMaan R tiiii*<:i*i 



X*=" AND EHSSHT CASE) " :G0SUB530: R* 
= S TRINE* < 127, 32) :RP=1 : Q*= "TITLE " + 
STRING* (27, 32) : L = 2B: G0SUB540: S«=S + 
32: Q*=" YEAR" : L=4: G0SUBS40: Q*="DIR 
ECTOR" :L=16: G0SUB54 0: F0RI=1T03:Q* 
= " ACTOR #"+RIGHT* (STR* (I ) , 1 ) : GOSU 
B540: NEXT: F0RW=1T0250: NEXT 
X*="CASE ONLY) " : G0SUB530: Q*="TYPE 
(CO, DR, HI ,H0, MU, MY) " : L=2: G0SUB54 
0:Q*="TAPE *": L=2 : G0SUB540 : Q«= " CO 
UNTER START" : L = 4: GOSU B 54 O: (3*="COU 
NTER END " 5 G0SUB540 : M I D* ( R* , RP , 1 
)="/": RP=i 10 

Q*=" SPEED (S,L,E)":L=1: GOSUB540:Q 
*="VIEW TIME (H: MM) ":L=4: G0SUB540 
:Q*="TIME REM ( H : MM ) " : L=4 : BOSUB5 
40:MID«(R*,lll,7)=MID*(R*,lll,l)-t- 
MID*(R*, 113,3)+MID*(R«, 117,2)+"/" 
: RP=1 18 

Q*="DATE RECORDED (MM-DD-YY) 
CB SPACES>" :L=B:G05UB540:S=S+32:M 
ID* (R*, 120, 4>=MID* (R*, 121 ,2) +MID* 
(R*,124,2):RP=124: Q*= " CHANNEL " : L= 
2: GOSUB540:Q*="COLDR (Y OR N)":L= 
1 : G0SUB540: Q*="COMMERCI ALS (N OR 
E,F, M, A) " : L=l : G0SUB540 
IFIR = OTHENI 1 = 1 : GOTD520ELSEFOR I 1 = 1 
T0IR;IFLEFT*(R«(I1),28)<LEFT*(R*, 
28) THENNEXTELSEF0RI2=IR TOIl STEP 
-1 : R* < 12 + 1 )=R* £ 12) : NEXT 
R* < I 1 )=R*: IR=IR+1 : RETURN 
CLS:PRINT311, "GEE I;a=<»tf3:r: " : POKE 1 07 
0, 32: PRINTiPRINT" (ANSWER IN UPPER 
" ; X*:S = 64:RETURN 

S = S + 32:Q = LEN <Q*) : PR INT3S , D* } " ? " : P 
RINT3S+Q+L+3, CHR* (127) : PRINT3S+Q+ 
2, " " ; : LINEINPUTA*:MID» (R*,RP,L) =A 
*!RP=RP+L 

PRINT3S+Q+L+2,STRING« (32, 32) : RETU 
RN 

Xl*="[3HMaO" : X 2* = "DELETE" : G0SUB19 
0:IFIO>IR THENRETURNELSEPRINT3192 
, "DELETING RECORD. . . " : FOR I = 10 TOI 
R-1 : R* < I ) =R* (1 + 1): NEXT: rR=IR-l:RE 
TURN 



570 
580 
590 
600 

610 

620 

630 
640 



650 
660 



670 
680 



690 
700 
710 
720 

730 



' SQHij R nnii*<:raa 



IFCt 
ENC= 
CLS: 

N=IN 
IR-N 
11 = 1 
14 = 1 
R* ( I 
( 14) 
N640 
12=1 
14=1 
(R* ( 
T* (R 
= R* ( 
THEN 
GOTO 
14=1 
R* (I 
R« ( I 
HEN6 
GOTO 



= "SM " 
2ELSEI 
PRINTS 
N=1R 
T (N/2) 
: 12=1 
2: ONC 
1+N: IF 
4) , 28) 
: R* ( 14 

2+1 : IF 
1+N: IF 
I 1 > , 28 
* < 14) , 
14) :R* 
660 
6 50 
1+N; IF 
4) ,99, 
4) :R*< 
80 
650 



THENC=1ELSEIFC*="ST "TH 

FC*="SN "THENC=3 

70, "... SORTING RECORDS, 

: IFN=0THENRETURNELSEI3= 

G0T0640, 660, 680 
LEFT* (R» ( I 1 ) ,28) >LEFT* ( 
THENT*=R« (I1);R«(I1)=R» 
)=T*: Il = Ii-N: IFI1>=1THE 

I2>13 THEN620ELgE630 
MID«(R4(I1),97,2)+LEFT* 
) >MID*(R*(I4) ,97, 2) +LEF 
28) THENT* = R« ( I 1 ) : R« ( I 1 ) 
(I4)='T*: I1 = H-N: IFI1>=1 



MID* (R* < I 1 ) , 99,6) >MID* < 
6) THENT« = R« ( I 1 ) : R* ( I 1 ) = 
14) =T*: 11=11 -N: IFIl >=iT 



740 



750 



760 



770 



XI 
EC 
AD 
F* 
IF 
UR 
TO 
X 1 
CA 
T: 

f ~ 

NE 
CL 
El 
DA 
51 
PR 
DY 
IF 
RN 



LcmEystnsi R r.iih*<:i^3 

*="Ht!EE": X2*="ON THE CASSETTE R 
ORDER. " : GOSU B 7 60: PR I NT : PR I NT " LO 
ING "; F*; -...": IR=1 : OPEN" I " , -1 , 



EOF (-1 > THEN 
NELSEINPUT* 
740 

*= " EfTma " : X2 
SBETTE RECD 
PRINT "SAVIN 
1 , F*: F0RI=1 
XT: CLOSE*-l 
S: PRINT341 , 
069, 32: POKE 
TA FILE NAM 
TIDN TAPE A 
INT3256, "PR 



IR=IR-1:CL0SE*~1:RET 
-1 , R* ( IR) : IR=IR+1 : GO 



*="ANDE33EEirE ON THE 
RDER. ":60SUB760:PRIN 
G "; F«; "...": OPEN" D" 
TDIR:PRINT*-1,R*<I) : 
: RETURN 

XI*;" EEinir SHMl" : POK 
1074, 32: PRINT: INPUT" 
E" ; F*: PRINT: PR INT" PO 
ND PRESS GHSB ";X2*: 
ESS 0r033> WHEN REA 



INKEY*< >CHR* < 13) THEN770ELSERETU 



Program 2: ti Version 



10 
40 
41 
42 
43 
44 
45 

50 

52 
54 



56 



60 



REM VMDP 
DIM Rl* < 
YY«="COD 
FOR 1=0 
READ Yt C 
NEXT I 
DATA COM 
USICAL, M 
CC*="DA 

LD SA " 
CALL CLE 
PRINT TA 
(6) : "DAT 
<DA> A 
PRINT TA 
" : : "PRI 
PT> TITL 
PRINT 
tS SPACE 
TAB ( 10) ; 
PRINT TA 
TAB < 10) ; 



TI 
60) 
RHIH 
TO 5 
I ) 

EDY, 
YSTE 
DT D 

AR 
B(6) 
ABAS 
LL" ; 
B < 10 
NTER 
ES" 
CHG 
S J " : 
"<SM 
B < 10 
"<SN 



VERSION 
V* CS) 

OMUMY" 



DRAMA, HISTORY, HORROR, M 

RY 

S PA PT AD DE SM ST SN 



; "VIDEOTAPE MOVIE":TAB 
E SYSTEM": : : "DISPLAY 
TAB ( lO) ; "<DT> TITLES" 
);"<DS> SEARCH, DISPLAY 
<PA> ALL" : TAB ( lO) ; "< 

DATA <AD> ADD 

TAB ( lO) ; "<DE> DELETE": 

> SORT BY MOVIE" 
);"<ST> SORT BY TYPE": 

> SORT BY TAPE #" : : "D 



230 OOMPUTi! MayWB3 



Notes On TI-99/4A Version 



C. Regena 



An effort was made to keep the translation 
as close to the author's version as possible. 
The VMDP record format is the same and 
the variables used in the program are the 
same as in the TRS-80 CC version. The line 
numbers with the explanation are the same 
in most cases; sometimes lines were added 
in the TI version because TI BASIC does not 
allow multi-statement lines. 

The TI printed screen is 28 columns wide 
and 24 lines long. The TI does not have PRINT 
AT capabilities, so while you are adding a 
record the screen will scroll, rather than using 
separate screens. 

The cassette file processing procedure is 
similar to the TRS-80. Line 734 OPENs file 
device #1, "CSl" or cassette 1. INPUT is 
used to read in previously saved data. IN- 
TERNAL format is used rather than DISPLAY 
format for more efficiency in this application. 
Each record is a FIXED length of 127. The TI 
cassette tape device will use record lengths 
of 64, 128, or 192 positions in FIXED record 
type, so we need to specify FIXED 128. 

Line 752 OPENs file device #2 to save 
data in the same format required to read in 
data. 

This program does not check your 
INPUT as you are adding a record to make 
sure your answers are logical. Follow the 
instructions listed in the TRS-80 version for 
each item entered. 

Cassette file processing does not have 



an EOF function to signal the last data record 
(disk file processing does). To signal the last 
record, this program will read the record, 
then check to see if the first three characters 
are "ZZZ". Therefore, just before you choose 
the option to save your data, enter a title of 
ZZZ (or ZZZZ, etc.). You may press ENTER 
on each of the remaining INPUT prompts. 
Since you may have nearly any type of 
printer connected to your TI, you will be 
asked to enter your printer configuration 
when you choose the printing options. Be 
sure to use the quotation marks. For example, 
if you have a TI 825 printer, your printer 
configuration will be: 

"RS232.BA = 600" 

For a teletype, the configuration may be: 

"RS232.TW.BA = 110" 

This program illustrates the power of 
string manipularion. The data is saved as 
one long string of characters (127 long), then 
certain segments are examined for the sort 
routines or the displays. SEG$ is a function 
that will return a specific SEGment of a string 
variable. For example, R$ is the data record. 
SEG$(R$,1,28) is the segment of R$ starting 
with the first character and taking 28 charac- 
ters - the title. SEGS(R$,97,2) is the segment 
of R$ starring with the 97th character and 
taking two characters (the TYpe of movie). 
String variables need to be combined with &, 
not -I-. 



430,450 



ATAFILE < L0> LOAD " : TAB ( i ) ; " < S A > S 
AVE" 
64 PRINT : TAB £ lO) ; "<QU> QUIT PROGRAM" 



70 INPUT C* 

80 C*=SEB« <C*, 1 , 2) 

82 IF C*="QU" THEN 800 

84 P=POS (CC* , C*, 1 ) 

85 IF P=0 THEN 52 

86 P=INT <P/3) +1 

as ON P GOSUB 240,290,340,400, 

, 560, 600, 6 0, 600, 730, 750 
89 GOTO 52 
120 R*=Rl*<IO> 
122 TY4=SEG« (R*, 97, 2> 

124 P=POS < YYt, TY«, 1 ) 

125 P=INT(P/2) 

126 TY*=Y*CP) 
130 RETURN 

140 A1«=SEG* <R4, 49, 16) 

141 A2«=SeG« (R«, 65, 16) 

142 A3«=SEG« (R», 81 , 16) 

143 DI«=SE6S (R*, 33, 16) 

144 TN«=SEG4 (R*, 99, 2) 

145 CN*=SE6* <R*, 101 



4)&"-"&SEG* <R«, lO 



150 
15J 

152 
154 
155 
156 
158 
160 

162 
164 
165 
166 
167 
168 
170 
171 
172 
173 
174 
175 
176 
177 



' : "^SEG* (ft*, 11 



5, 4) 

SP*=SEB* (R«, 1 10, 1 ) 

VT*=SEG*(R«,111,1)& 

2 2 ) 

VR«=SEG*(R«, 114, 1) 

IF VR«="E" THEN 158 

VR« = VR*S<": "StSEGt (R*, 1 15,2) 

GOTO 160 

VR*="EOT" 

DT* = SE6* (R*, 118, 2>S<"-"S,SE6* (Rt, i: 

O, 2) &"-"S(SEG* (R*, 122, 2) 

CH*=SEG* (R*, 1 2 4, 2) 



CL*=SE6t (R«, 126 

IF CL*="N" THEN 

CL*=" YES" 

GOTO 170 

CL«="ND" 

CM*=SEe* (R* 

IF CM«<>"N" 

CM«="NONE" 

GOTO 185 

IF CM*<>"E" 

CM*="EDITTED" 

GOTO 185 

IF CM*<>"F" THEN 



1 ) 
168 



127, : 
THEN 



) 
174 



THEN 177 



180 



Ma/ ■mi COMPUn! 231 



178 


179 


ISO 


181 


182 


183 


185 


190 


192 


200 


201 


203 


204 


205 


207 


208 


209 


210 


212 


240 


250 


252 


254 


255 


256 



258 



?60 



CMt="FEW" 

GOTO 185 

IF CM*<>"M" THEN 183 

CM*="MANV" 

GOTO 185 

CM*=" ALL" 

RETURN 

CALL CLEAR 

PRINT Xl«;" RECORDS": : "TITLE TO 

" ; X24: : 

INPUT T* 

T* = SEG* (T*S<" <:28 SP ACES J " , 1 , 28 ) 

FOR IO=l TO Ii 

IF T*=SE6t (Rl « ( lO) . 1 , 28) THEN 212 

NEXT 10 

PRINT : :"«* NO SUCH RECORD **" 

PRINT : "PRESS <ENTER>"; 

CALL KEY(0,K,S) 

IF K<>13 THEN 209 

RETURN 

10=1 

6DSUB 120 

CALL CLEAR 

GDSUB 140 

GOSUB 350 

PRINT "STARRING 

«: TAB ( 1 1 ) ; A3«: :"DIRECTOR: ";DI4 

PRINT :"TAPE: 

"SPEED: ";SP«; 

TS:"TIME REM: 



265 
270 
271 
272 
273 

274 

275 
276 
277 
278 
280 
290 
291 
292 
294 
300 
301 
302 
303 
304 
305 
306 
310 
320 
321 
322 
323 

325 
326 
327 
328 
329 
330 
340 
341 
342 
344 
350 



" ; Al*: TAB ( 1 1 ) ; A2 
"DIRECTOR: " 
TN4; " < " ; CN* 
" : " V I E W TIME 
; VR« 



RECORDED: " | DT* :" CHANNEL : 
COLOR: " ;CLt: "COMMERCIALS 



51 ) 

365 



PRINT : 
" ;CH*: 
: ";CM« 
6D5UB 360 
CALL KEY<0,K1 
IF Kl=77 THEN 
K = f<l 

IF <K<>76>* (K<>7B)+<K=78) * (IO=IR) 
+ (K = 76) * C 10=1 ) THEN 270 
IF K<>7e THEN 277 
I0=10+l 
GOTO 250 

IF K076 THEN 250 
10=10-1 
GOTO 250 
IP = 

MP=INT ( IR/5) 

IF IR/5C >INT : IR/5) THEN 300 
MP=MP-1 
CALL CLEAR 
FOR 1L=1 TO S 
ID=IP*5+IL 
IF IO>IR THEN 310 
GOSUB 120 
GOSUB 350 
NEXT IL 
GOSUB 360 
CALL KEY (0, Kl ,S1 ) 

IF Kl=77 THEN 365 
K = K1 

IF ( K< >76 ) * C K < :; 78 ) + ( K=78 > 
+ (K=76> « ( IP=0) THEN 320 

IF K07B THEN 328 

IP=IP+1 
GOTO 300 

IF K076 THEN 300 

IP=IP-1 

GOTO 300 

Xl*="SEflRCH" 

X2*="SEARCH FDR" 

GOSUB 190 

IF lOIR THEN 365 ELSE 250 

PRINT "TI: "; SEB* (R*. 1,28) : 



» < IP = MP) 





;TY«: : 


355 


RETURN 


360 


PRINT :"<N>EXT PAGE 




" : "<M>ENU" ; 


365 


RETURN 


390 


CALL CLEAR 


392 


PRINT " ** PRINTER 



394 



395 


397 


399 


400 


402 


403 


404 


405 


406 


407 


410 



YEAR: 



232 



" ;SEG« (R*, 29, 4) 
COMPUH! MoyWaa 



TAB ( 14) 



TYPE: 



412 



414 
416 
420 
42 1 
422 
430 
431 

432 
433 
434 

435 

436 

437 

450 

451 

452 

453 

454 

455 

456 

457 

458 

459 

460 

461 

462 

463 

464 

465 

466 

467 

468 

469 

470 

471 

472 

473 

474 

475 

476 

477 

478 

479 



"<L>AST PAGE 



ROUTINE *» " 

PRINT "ENTER YOUR PR I NTER " ; " CONF I 

GURATIQN: " : : 

INPUT Pl« 

OPEN #3:Pi* 

RETURN 

GOSUB 390 

S«=" £4 SPACES} " 

FOR 10=1 TO IR 

GOSUB 120 

GOSUB 140 

PRINT #3: : : : 

1 , 2B) ; S«; "YEAR: 

*; "TYPE; " ; TY« 

PRINT #3: :"STARRING: ";A1«;S* 

«; S4 ; A3*: "DIRECTOR: ";DI« 

PRINT #3: :"TAPE: "; TN*; St ;" COUNT 

ER: " I CN«: "SPEED: " ; SP« ; " P " ; S« ; " V 



■TITLE: ";SEG*<R*, 
" ; SE64 (R*, 29, 4) ; S 



A2 



lEW TIME:" ; VT*; S*; "TIME REM: " ; VRt 

PRINT #3: "RECORDED: " ; DT t ; St : " CHA 

NNEL: "; CH«; S*; "COLOR: ";CLt;S*;" 

COMMERCIALS: " ; CM* 

IF I0/5<>INT< 10/5) THEN 420 

PRINT #3: :::::::;:: 

NEXT 10 

CLOSE #3 

RETURN 

GOSUB 390 

PRINT #3: : : TAB ( 10 > ; " T ITLE " ; TAB < 

34) ; "YEAR" ;TAB <45) ; "TYPE" : : 

FOR 10=1 TO IR 

GOSUB 120 

PRINT *3:SEG*<R4, 1,28) ;TAB(34);SE 

G«(R«,29,4) ;TAB(44) ;TY4 

NEXT lO 

CLOSE #3 

RETURN 

X t = " " 

GQSUB 530 

RP=1 

Q«="TITLE"S<" {23 SPACES>" 

L = 2a 

GOSUB 540 

Q«="YEAR" 

L = 4 

GOSUB 540 

Q*="DIRECTOR" 

L=16 

GQSUB 54 

FDR 1=1 TO 3 

Q«="ACTDR tt"&STRt(I) 

GOSUB 540 

NEXT I 

PRINT 

Q$="TYPE (CD. 

L = 2 

GOSUB 540 

0*="TAPE «" 

L = 2 

GDSUB 540 

Q4="COUNTER START" 

L = 4 

GOSUB 540 

Qt="CDUNTER END ' 

GOSUB 540 

R« = R*S<"/ " 

RP=1 10 



DR, HI , HO, MU, MY) 



4S0 Q*="SPEED (S,L,E)" 606 IF C*<>"SN" THEN 610 

481 L=l 607 C=3 

482 BOSUB 540 610 CALL CLEAR 

483 Q«="VIEW TIME <H:MM)" 61! PRINT "... SORTING RECORDS ...": 

484 L=4 : : 

485 BDSUB 540 613 N= I R 

486 Q«="TIME REM (H:MM)" 620 N=INT(N/2) 

487 L = 4 • 622 IF N=0 THEN 69*? 

488 GOSUB 540 624 I3=IR-N 
490 R* = SEG* (R«, 1 , 1 10) SiSEG* (R*, I 1 1 , 1) S< 626 12=1 

SEBS <Rt, 1 13, 3) StSEB* (R«, 1 17.2) Sc" / " 630 11=12 

492 RP=118 632 ON C GOTO 640,658,630 

494 Q«="DATE RECORDED (MM-DD-YY) 640 I4=I1+N 

{4 SPACESDCa SPACESt.J" 64 1 IF SE6* ( R 1 ♦ i I 1 ) , 1 , 2B )< =SEG* ( R 1 « ( I 

496 L=8 4),1,28)THEN 650 

498 GOSUB 540 642 T*=Rlt<Il) 

500 R* = SEG* (RS, 1 , 1 19) &SEG* (ft*, 121 , 2) & ^43 R 1 4 { I 1 ) =R 1 * ( I 4 > 

SEG* <R*, 124, 2> 644 R1*<I4)=T* 

502 RP=124 645 I1=I1-N 

503 Q«="CHANNEL" 646 IF I1>=1 THEN 640 

504 L=2 650 12=12+1 

505 GDSUB 540 655 IF I25I3 THEN 620 ELSE 630 

506 Q«="COLDR (Y OR N)" 658 14=1 1+N 

507 L=l 659 S1* = SEG« (Rl« < I 1 ) , 97,2) S<SEG« !R1* ( I 

508 GOSUB 540 1),1,2B) 

509 Q*="COMMERCIALS <N OR E , F , M , A ) " ^60 S2* = SEG* ( R 1 « < I 4 ) , 97 , 2 ) &SEB* ( R 1 * <I 

510 L=l 4) , 1 . 28) 

511 GOSUB 540 661 IF S1«<=S2* THEN 650 

512 IF IROO THEN 515 663 T* = R1*(11) 

513 11 = 1 664 Rl* ( I 1 ) =R1* C 14) 

514 GOTO 525 665 R1*(I4)=T* 

515 FDR 11=1 TO IR ^66 I1=I1-N 

516 IF SEG«<R1*(I 1 ) , 1 ,28) > = SEG* (R*, 1 , ^^j jp I 1 ■; = 1 THEN 658 ELSE 650 
2B)THEN 520 680 I4=I1+N 

517 NEXT 11 681 IF SEG* C R 1 4 ( I 1 ) , 99 , 6 )< =SEG* ( R 1 « <rl 

518 GOTO 525 4>,99,6)THEN 650 

520 FOR I2=IR TO II STEP -1 ^B2 T*=R1*CI1) 

521 Rli (12+1 >=R1* < 12) 



522 NEXT 12 

525 Rl* ( I 1 ) =R* 

526 IR=IR+1 

529 RETURN 

530 CALL CLEAR 

532 PRINT "{4 SPACES>*« ADD RECORD ** 



683 R1«(I1)=R1»(I4) 

684 ftl* (14) =T« 
635 11=I1-N 

687 IF I1>=1 THEN 680 ELSE 650 

699 RETURN 

730 X1*="LDAD" 

732 GOSUB 760 

533 R*=""' 734 OPEN « 1 ; " CS 1 " , I NPUT , I NTERN AL , F I X 

534 RETURN ED^128 

540 PRINT Q*; ^^^ IR=0 

541 INPUT A* 7^3 IR=IR+1 

542 IF LEN(A«)<=L THEN 546 740 INPUT 4» 1 : R 1 « (I ft > 

543 A* = SEG*(A«, 1,L) 742 IF SE6* ( ft 1 * (I R ) , 1 , 3 > <> " Z Z Z " THEN 

544 GOTO 550 738 
546 FDR I I=LEN ( At ) +1 TO L 746 IR=IR-1 

548 A* = ASS(" " 747 CLOSE #1 

549 NEXT II 748 RETURN 

550 R«=R*&A* 750 X1*="SAVE" 

551 RP=RP+L 751 GDSUB 760 

552 PRINT 752 OPEN 4» 2 : " CS 1 " , OUTPUT , I NTERNAL , F I X 
554 RETURN ED 128 

560 X1*="DELETE" 754 FDR 1=1 TO IR 

561 X2S-"DELETE" 755 PRINT #2:R1*(I) 

562 GOSUB 190 756 NEXT I 

563 IF ID>IR THEN 572 757 CLOSE «2 
565 PRINT : "DELETING RECORD ..." 758 RETURN 

567 FOR 1=10 TO IR-1 760 CALL CLEAR 

568 Rl* ( I ) =R14 ( I + l > 762 PRINT "<:4 SPACES>*« ";X1*;" DATA 

569 NEXT I FILE **": : : : 

570 IR=IR-1 764 RETURN 
572 RETURN 790 B*="" 

600 IF C*<>"SM" THEN 603 792 FOR B= 1 TO Bl 

601 C= 1 794 B«=B*&" " 

602 GOTO 610 796 NEXT B 

603 IF C«<>"ST" THEN 606 798 RETURN 

604 C=2 aOO CALL CLEAR 

605 GOTO 610 810 END © 

May 1983 COMPOTE! 233 



TCON: 

The Apple Writer 
Processes Programs 



Michael Ginsberg 



Would you like to have the power to: change all or some 
variables in an Apple program; look at tzuo different 
parts of a program at the same time; find all occurrences 
of a word or phrase; move one or more lines of a program 
around at will; have named GOSUB targets; and have 
other powerful programming tools at your fingertips? 
You've already got it. Here's how to get more out of the 
Apple Writer than you may have thought possible. 



The Apple Writer, the word processor which 
comes with every Apple II, can be used in two 
ways to aid your programming. First, you can use 
the features of Apple Writer to modify existing 
programs. Second, you can write your new pro- 
grams directly using the Apple Writer. If you write 
programs using the Apple Writer, the only differ- 
ence is that you use the controi-K to keep the 
characters in uppercase. 

A knowledge of text files and BASIC files is 
necessary to understand how this process works. 
A short program is included here for files that are 
currently BASIC programs. This short program 
uses the EXEC feature of the Apple to create a 
routine that converts the BASIC program to text 
so that the Apple Writer can read it. 

The TCCDN program appends three lines to 
the beginning of your program. The line numbers 
are 0, 1, and 2. If you already have lines in your 
program that use those numbers, you must in- 
crease these line numbers to 3 or above. First, 
type in and run EXEC TCON; it will create the 
TCON program which will convert BASIC to text. 
Load in the BASIC program and type in EXEC 
TCON; the disk will start spinning, and your pro- 
gram will be converted. When the program has 
been converted, you can boot your Apple Writer 
and use all of the features to help you debug your 
program. After it is booted, you should hit control- 
K so it will be in alpha lock. 

Some of the features of TCON are: search, 
replace, scrolling, deleting and retrieving, split 

23d COMPUTIi May 1983 



screen, and word and phrase counter. Some ex- 
perimenting with Apple Writer is necessary to 
learn how it works. After you have finished de- 
bugging your program, all you need to do is save 
the file. 

The next step involves converting your file to 
a BASIC program. This sounds hard but is actually 
quite simple. After DOS is booted, you need to 
type NEW; then type EXEC followed by the file 
name. That's it. Two minutes later, after you've 
seen many ]'s, your file will be magically converted 
to a working BASIC program. Now you should 
save the BASIC program and, if you are through 
making changes, you can delete the text file. Apple 
Writer can be extraordinarily versatile as a pro- 
gramming aid. 

10 Q» = CHR* (34):D» = CHR* (4) 

20 PRINT D*; "OPEN TCON" 

30 PRINT D*5 "WRITE TCON" 

100 PRINT "0 D» = CHR* (4) : PRINT D*; "Q*; " 

OPEN FILE";Q*i CHR* (13) 
110 PRINT "1 PRINT D*; "Q»; "WRITE FILE"iQ*| 

"; LIST 3-" 5 CHR* (13) 
120 PRINT "2 PRINT D*; "Q*; "CLOSE FILE"!Q«r 

": END"; CHR* (13) 
130 PRINT "RUN" 
140 PRINT "0"5 CHR* (13): PRINT "1"; CHR* ( 

13): PRINT "2"; CHR* (13) g 











COMPUTE! 

TOLL FREE 

Subscription 

Order Line 

800-334-0868 

In NC 919-275-9809 









Apple Fast Sort 



John Sorver 



// can take a loug time to put a list into alphabetical 
order. In a recent expcriiuent, using a basic bubble sort 
routine, it took the author's Apple eight hours and 57 
minutes to sort 1000 randomly created strings of random 
le)}gth betiveen one and 20 characters. This subroutine 
puts both o)ie- and two-dimensional Apple arrays in 
order at a tolerable speed: that same list of 1000 strings 
nozc takes one minute and 45 seconds. 



Strings values, when assigned, are stored at the 
very top of Apple's free RAM, and as more strings 
are assigned, they are stored belou/ the strings 
already in memory. A table, created when you 
use the DIM statement, keeps track of where each 
string is in RAM. 

Some important information is stored at the 
beginning of this table. The first byte represents 
the first character in the variable name. The second 
byte represents the second character in the vari- 
able name plus $80 (adding $80 designates it as a 
string array rather than an integer or decimal point 
number array). The next pair of bytes gives the 
length of this pointer table. 

The fifth byte is the number of dimensions 
that you have used with the DIM statement. If 
you used a two-dimensional array, the next two 
bytes tell how many variables are in the second 
part of the dimension (if three-dimensional, the 
next four bytes, and so on). 

The final two bytes of information are the 
number of strings in the first dimension. The table 
begins here. Each variable is located by a three- 
byte pointer. The first byte is the length of the 
record, and the next two point to where the first 
character of the variable is stored. These pointers 
are always in order from the zero dimension to 
the nth dimension. 

At the end of this grouping of pointers are 
the pointers for the first group of the second di- 
mensioned part of the array. Following this is the 
second group of pointers for the second dimen- 
sioned part of the array, and so on. If you used a 
one-dimensional array, there is only one group of 
pointers. 

As you can see, there is no need to sort the 
strings themselves. Just sort the pointers. There- 
fore, there is no time wasted in garbage collection 
and, in most cases, the length of the strings does 



not affect the time of execution. 

Simple To Use 

Using this sort is quite simple. Apple stores the 
last variable used in $81 and $82, so you may need 
to insert a statement in your BASIC program such 
as A$(0) = A$(0) (see line 90 of Program 2), or you 
may POKE these values in if you are putting this 
utility on another machine. The sort can be easily 
changed to use the zero dimension of an array if 
you wish. To do this, simply change the following 
lines in the BASIC loader (Program 1). 

120 IF CK < > 5685 A THEN PRINT "CHECK DAT 

A STATEMENTS FOR ERROR": STOP 
2O0 DATA 169,0,133,253,133,239,169,1 
400 DATA 165,6,105,2,133,6,169,0 

If you are using a two-dimensional array, 
you will need to store the records that are to be 
put in order by using the zero subscript of the 
second dimension (that is, A$(1,0), A$(2,0), etc.). 
The accompanying arrays (A$(l,]), A$(2,l), 
A$(l,2), A$(2,2), etc.) will be kept with their re- 
spective zero-subscripted record. 

The sort will automatically ascertain if you 
are using a one- or two-dimensional array and 
will adjust itself accordingly. You may use any 
number of Subscripts desired in one-dimensional 
arrays and in the first part of the two-dimensional 
arrays. But don't try to use anything larger than a 
two-dimensional array, or attempt to use more 
than 255 variables in the second part of your two- 
dimensional array. Some of the corresponding 
subarrays would not be properly aligned. 

Program 1 loads the machine language sorting 
routine into RAM. You should save this on disk 
by typing: 

BSAVE SORT, A$944A,LS1B6 

Program 2 provides an example of the steps 
necessary to use the routine. 

Program 1: ml Fast Sort Loader 

100 REM THIS PROSRAM INSTALLS BUT DOES 

NOT RUN THE ML FAST SORT 
110 FOR I = 37962 TO 38399! READ A:CK = 

CK + At POKE I, As NEXT 
120 IF CK < > 56857 THEN PRINT "CHECK 

DATA STATEMENTS FOR ERROR"! STOP 
130 TEXT 1 HOME s PRINT "TYPE 'BSAVE SORT, 

A «944A,L«1B6' " 
140 PRINT "TO SAVE SORT ROUTINE ON DISK" 

MQv19e3 COMPUTEI 235 




177,237,240, 165, 133, 254, 133, 255 
1A2, 0,200, 177,235, 149,0, 177 
237, 149,2,232, 192,2,208,242 
160, 0, 177, 0, 209, 2, 240, 4 
144, 135, 176, 12,200, 196,255,208 
241, 165,254,208,3,76, 19, 149 
169, 1, 133,253,160,0, 177,235 
72, 177,237, 145,235, 104,145,237 
200,192,3,208,241,166,31,202 
240,45,24, 165,235, 101,25, 133 
27, 165,236, 101,26,133,28, 165 
237, 101,25, 133,29, 165,238, 101 
26, 133, 30, 160, 0, 177, 27,72 
177, 29, 145,27, 104, 145, 29,200 
192,3,208,241,202,208,3,76 
19, 149,24, 165,27, 101,25, 133 
27,165,28, 101,26, 133,28, 165 
29, 101,25, 133,29, 165,30, 101 
26, 133, 30, 24, 144, 205, 141 , 183 



Program 2: steps Necessary To Use Fast Sort 

10 HIMEMs 37962 
20 D» = CHR« (4) 

PRINT DS'-BLOAD SORT- 
INPUT "HOW MANY RECORDS" J N 
DIM A«(N> 
FOR A = 1 TO N 
PRINT "WHAT IS RECORD #"A; 
INPUT ■' ";A*(A) 
NEXT 
90 A* CO) = A»(0) 
100 CALL 37962 

FOR A = 1 TO N 

PRINT A»(A> 

NEXT Q 

END 



560 


DATA 


570 


DATA 


580 


DATA 


590 


DATA 


600 


DATA 


610 


DATA 


620 


DATA 


630 


DATA 


640 


DATA 


650 


DATA 


660 


DATA 


670 


DATA 


680 


DATA 


690 


DATA 


700 


DATA 


710 


DATA 


720 


DATA 


730 


DATA 


740 


DATA 



VERSACALC 

VERSACALC 

VERSACALC 

VERSACALC 



TUTORIAL 

UTILITIES 

AND FILE MANAGER 

Everything you always wanted to do with Visicalc , 
(but thought you couldn't). 



VERSACALC 

VERSACALC 
VERSACALC 



J-C 



..^■T^'-'' 



py^ 



NOW YOU CAN: 



SORT a Visicalc screen on any column, 
ascending or descending; all related 
formulas and labels are sorted too. 

put the entire disk CATALOG on the 
screen at once! 

easily do Year-To-Date accumulations! 

"Dound" formulas to expose the full 
forniLilas in place on the screen!' 

append two Visicalc files!' 

print the contents of a /SS file! 

print the contents of a /PF file! 

AND our EASEL BINDER is so nice that 
you will put .your other manual in it! 



Apple ir 
PET&CBM-' 
IBM PC ' 
Apple III' 

•specify DOS 



$100 
125 
ISO 
150 



If you use Visicalc" but you are 
bumping into its limitations, then you 
need Versacalc"! Versacalc runs within 
Visicalc but uses no extra memory; in 
fact, it effectively increases memory by 
letting you call in modules from disk as 
needed. 

A Tutorial section makes clear such 
features as PLOOKUP, OIF, PNA, (3ERR0R, 
which are not well explained in the 
Visicalc manual . 

A Utilities section makes It easy to 
create your own menu-driven modules which 
condense hundreds of commands into four 
keystrokes. You can build in sophist- 
icated error checking (e.g. Is the input 
value between certain limits?}. Now it Is 
possible for people untrained in Visicalc 
to perform the weekly updating without 
constant instruction. 

Anthro-Digital Software 

P.O. Box 1385 

Pitisficld. MA 01202 

413-448-8278 

Versacalc 15 a TtaaemarKOtVefsacaicErie'prises mc 



236 COMPUH! M^jyl^Jaa 



64 Odds And Ends 



David Martin 



Here are a few interesting tidbits about the 64. 

• Warm Start By SYS 64738 ! 

This handy little number will help save your 
power switch. However, if the system crashes or 
locks up, you will have to power down. 

• List Terminator i 

This feature will keep others from viewing your 
program after it's run. To disable the list, add to 
your program POKE 775,200. To restore the list 
feature, use POKE 755,167. 

• STOP Key 

POKE 808,239 turns the STOP key off. 
POKE 808,237 turns the STOP key on. 

•RUN/STOP And RESTORE Key Terminator | 

POKE 808,225 disables these keys; however, it 
changes the appearance of the program listing 
(this does not affect the program run). POKE 
808,237 restores both keys to normal. 

• Keyboard Killer 

POKE 649,0 turns the keyboard off, 
POKE 649,10 turns the keyboard on. 

• Save And List Destroyer 

The saving and listing of your program can be 
prevented by killing the STOP and RESTORE 
keys. To do this, add POKE 808,225:POKE 818,32 
to your program. To go back to normal, type POKE 
808,237:POKE 818,237. Note: POKE 808',225 has a 
side effect - it messes up the system clock. 



• IVIagic l\1erge 

"Magic Merge" will work on the 64, if you use 
the VlC-20 method. 

"Magic Merge" is a technique described by 
Jim Butterfield (COIMPUTE!, June 1982) that lets 
you combine lines from one program with 
another. Here is a condensed set of instructions: 

To prepare the lines you want to merge: 

1. Insert a blank tape, rewind, and then type: 
OPEN 1,1,1, "PROGNAME":CMDl:LIST 
("PROGNAME" is a name for your program) 

2. When the tape stops and 'READY' comes 
back, enter: PRlNT#l:CLOSE 1 

3. After the tape stops, you can remove it. 

To merge with a program in memory; 

1. Put the "merge tape" in the tape unit. 

2. Enter: POKE 19,l:OPEN 1 

3. After 'READY' comes back, clear the screen 
(SHIFT-HOME). 

4. Press exactly three cursor-downs. 

5. Enter: 

PRINTCHR$(19) :POKE198,l:POKE631,13:POKEl53,l 

6. The tape will finally stop with an error 
message. Ignore the error, and enter CLOSE 
1. 

7. The lines are now merged, magically. © 



GEMINI ELECTRONICS 

"Where Service Counts" 

At Gemini we believe ttiat customers want service as well as price! 
Send for our catalog listing top quality, value-Qriented products. 
Products I 



like: 

Your Filing System 

Filer, Ledger, Reporter and more! 

Defineyourown fields! (Skexp, 

required) Tape or Disk. S49.95 

CommtermforVIC 

A multi-function Terminal Program 

set including Fast Email. Up and 

Download, print save and more.. . 

S19.95 

Personal Checks allow 3 weeks, Masler Visa add 4% 
Mailorder: 1106 Forest Ave.. Staler Island. N.Y. 10310 
Depl. H. Phone (orders) 212-494-2497 (info) 212-442-3085 



Smart Term 64 

Disk-based Terminal Program for 

the 641 Up and Download, save. 

print... 524,95 

Gemini-10 Printer 

Every feature you could think of 

and more. Complete with Vic'64 

Sera/porf interface! SCall! 



'^,THE MOST VALUE FOR YOUR i^ 



K^- 



^ot 



The All Cassette Magazine 

5 or more original programs per montti 

GAME - EDUCATIONAL - UTILITY 
average cost less than 8ac pel program 

The Original Video Newsletter 

Articles - Hints - Reviews 

OELIVEKEO MONTMIV to VOURDOOR 

Don't be outFOXed: Subscribe Today! 
FOX:20 

PO- Box 507 

Deer Park, Texas 77503 

(713)473-6723 



S53/yr. U.S. S63/yr. Canada i Overseas S6.S0 Single Issue 

All dlOCfS Ptfl>,licl lU 5 Pundjp AuihD' * D<?Jk'i inqumr^ .n«,lt;tj 



Texas residents add 5% Sales Tax FOX 20. A division o( Foxfire 




rutav1<J83 COMPUTE! 237 



Atari Times 



B B Garrett 



Kiioiviii^^ how much tiiitc Ihe Atari needs to perform 
specific opcnitio)is cnn help you speed up nntiiiiig times 
for BASIC progrnuis. Here are the durations of various 
operations, along with suggestions for fixing the most 
time-consinniiig ones. 



Most people who purchase a home computer do 
so for a long list of practical reasons beyond the 
fact that computers are great fun. Mv own list 
included the preparation of color slides, a modest 
amount of word processing, and some fairly heavy 
number crunching in connection with my research 
in theoretical solid state chemistry. 

Because of its excellent color graphics, very 
good keyboard feel, and relatively fast 1.8 MHz 
clock rate, the Atari 800 was my choice. 

After using the computer for all those other 
things for a few months, it came time to make the 
machine earn its keep by doing a big repetitive 
calculation. I won't drag you through the details 
of that computation, but the size of the problem is 
illustrated by the fact that four deep nested loops 
with indices ranging up to 40 were required. This 
meant about a million passes through the inner 
loop where several calculations and a couple of 
comparisons were necessary. 

My original BASIC program would still be run- 
ning today, if it had been turned loose on the full 
problem. 1 needed to optimize the program or 
develop a machine language subroutine to get the 
calculation done in a reasonable time. In any case, 
a knowledge of the execution times for specific 
operations was required to make intelligent pro- 
gramming decisions. Let's examine some of the 
facts and myths about speeding up program run- 
ning times in Atari BASIC. 

Taking A Hard Look 

In the problem 1 have been discussing, an overall 
time reduction of 66 percent was accomplished 
without resorting to machine language. These 
savings were achieved by utilizing every speedup 
hint 1 had ever encountered. Many of these 
changes were tedious and ineffective, but others 
obviously worked. Examining the actual time 
savings proved that a systematic approach to faster 
BASIC programs was called for. 

238 COHPUTI! May 1963 



The most important idea is to spend your 
time where the program is spending its time. 
There is little value in clipping a few milliseconds 
off a section of the program which is traversed 
only once or twice. It also helps if programs are 
laid out from the start with fast execution in mind. 
The best wav to write faster, more efficient pro- 
grams is to know your tools. To understand the 
wav BASIC works, one needs to know: 

• How it proceeds from statement to state- 
ment and line to line, 

• How it branches and sets up loops, 

• How it stores and looks up variables, 
matrices, and strings, and, most important 
for speed, 

• How long it takes to perform various 
operations. 

Lane Winner and Bill Wilkinson have de- 
scribed many aspects of Atari BASIC recently in 
very informative articles. These articles give a 
clear description of the first three items above. 
Briefly, BASIC lines arc stored sequentially in 
memory beginning with line numbers and the 
number of bytes offset to the next line. The offset 
to the next statement precedes each tokenized 
BASIC statement. Tokens are one-byte identifiers 
of commands, variables, etc., which serve as offset 
addresses in appropriate tables. Command and 
syntax tables guide the interpretation of the state- 
ment. A matrix or string would be tracked from 
the variable name table through the variable value 
table to the string array table. Branch destination 
lines are found by sequentially comparing line 
numbers from the beginning of the program each 
time the branch is made. Return line numbers 
and statement offsets are saved on a last-in, first- 
out runtime stack. 

The main focus of this article is on the time 
required to perform a specific operation in Atari 
BASIC. This information should allow a program- 
mer to make better choices to increase speed. 

Before looking at BASIC operation times, 

let's review the kinds of advice about speeding 
up programs which have been published in vari- 
ous places. Such advice falls into three categories: 

A. Choose the most efficient program logic 
for the task at hand. 






YOU'RE GONNA LOVETHESE 

ROCK BOTTOM PRICES! 



PROGRAM 14IUU: 

WJVJWCtD HUSIC SYSTD* 19. 9i 

ADVDTUn CM A BOAT 24. ?S 

A£ J4,4S 

ALl BABA * THE *0 THIEVES 32. yS 

ALIEH AMBUSH 2^.'*'i 

AtlCH CXROEN-ROH lit.S'i 

KLlTt* SWARM 14. 4i 

WiDPCnnjA (WCW IMPftOVIDl 2^*."*^ 

ARKJR ASSAULT J^.-JS 

ASTEROIDS-WH J4-9S 

ATARI ASSEMBLEK IQITDR b'i-'ib 

TVn ATAIU ASSEHBLEH-aOOK, !2.9^ 

ATARI BASIC i?.'?^ 

ATARI BASIC KEF HAKUAL 3 0.9^ 

ATAKI BASIC-BOOK ID.yS 

ATARI BASKETBAii- fiCK )a.9S 

ATAKI BDOnCEEE'ER td9.4S 

ATARI BOOIUEEPER KIT 24').9^ 

ATAftI GfLMiS « RtC.-BOOK 14.9^ 

ATARI HOME riLINC PlAMACCR 49. 9^ 

ATARI HOHE HAHAGER KIT 79.9^ 

ATARI KAcao asseh/tett eo 99. 9i 

ATARI nlCRDsarr basic 89. 9E. 

ATARI MUSIC COflPOSER-nOH J9.9^ 

ATAKI PILCT HOHE PRG-RDM 79. 9& 
ATARI PiLOT FOB BEGlW-BOOE 14, 9S 

ATAKI PROCRAHHER £IT &9.9^ 
ATARI SOUHO t CRAPKICS-BOOK 9.9& 



RETAIL BALE 
PkECR PPUTE 



ATARI SPEED READIrlC 74-9^ 

ATARI TECH USER KOTES 29. 9S 

ATARI TELELIHK-RDH 29.9!i 

ATARI TtXiai TYPING 24.95 

ATARI KORUJ S9.95 

ATARI WRItEH 79,3b 

ATTACK AT 8P-CtC-4 32.95 

BANDITS 34.95 

BA£EaALL (IN UOHE) :)4.?5 
BASIC COHPILEB (DATASOFTJ 99. 9i 

BATTLE FOR IIORMAHDY 19,^5 

BATTLZ or SHILOM 29.95 

BATTLE TREK 29^95 

BISHOP'S SpUARE 29*9S 

THE BLADE OF BU^CKPOOL J9.9S 
BOOK OF ATARI SOFTWARE 'BJ 19.9^ 

BUG OFF! 29.9^ 

CASTLE WOLFENSTriH 29.9^ 

CANYDK CLIMBER 29.95 

CATAOJUaS OF BARUTH ^9.95 

CAVE-tN-ROn J9.95 

C^VERHS OF HARS 19.9? 

CET^Ti PEDE-ROH 44 .9 S 

CHECKERS 49.95 

CHESS 69,95 

CHtCKEM 54.45 

CHOPLIPTEH 34.95 

CLAIM JUHPEH i4.95 

CLOWUS fa BALLOOWS 29. 9^ 

COUJH PRINT 39.99 

COrtMUHICATOR KIT 279»9i 

cohpu-reau 29. 9s 

cokpu-hath/fract ion j9 , 95 

compu-math/decimalj: J^*9!> 

COHVERSATIONAL PHEnCH SH.'i". 

OOWVERSATIOWAL CERHAN 59,9b 

CONVERSATIONAL ITALIAN 59. Mb 

Ca*VERSATlDHM. SPANISH ^4,95 

THE COSMIC BAUAWCE JI.'^V 

CRDSSriRE 29. "^b 

CHDSSriHE-WJM 44*95 

CRUSH CRUKBLE fa CUiXtl' ^9,95 

CYTBOK WASTERS H.9'> 

UATA HANACKMErW KVSTfJI J2.7S 

llATA PIRTECT 99-95 

PATALIKK )'J.9'> 

DATASM 6b 2.0 Ht,.^; 



21.95 
13.9^ 
24.49 
24.95 
21.^5 
2T.95 
24.49 
21 .9b 
27,95 
26.49 
42.95 
9.95 
42.95 
7.95 
B*95 
24.49 
106.9^ 
179.95 
11. 9i 
)S.95 
57.95 
&4.49 
64.49 
39.95 
56.95 
11,95 
49.95 
a. 95 
54-95 
21, 9i 
21.95 
17,95 
41.95 
56.95 
22.95 
24.95 
24.95 
68.95 
27.95 
27,95 
21. H5 
21.95 
27.95 
14.9^ 
21.95 
il.95 
21.95 
21,95 
27.95 
?a,95 
JI.95 
34.49 
49.95 
24.49 
24.95 
24.49 
21.95 
27,95 
209,95 
J1.95 
27.95 
27.95 
4^.9i. 
42.95 
42. '<5 
42.9b 
27. 'ib 
21, -Jb 
^9.95 
2r.95 

Ib.fb 
74. '(5 
27.95 
*>1.-<5 



DAVID'S HIDNICHT UCIC )4.95 

DEADLINE 49.95 

DEADLY DUCR-ROM J4.95 

□EPEXDER 44.95 

DELUXE IHVAOER-ROH 19-45 

DIG cue 44.95 

DISK DETECTIVE 29.95 

DISK MANAGES 29.95 

DISK MORKSHOP 14,95 
DISIXrnt INVENTORY SYSTEM 2i.9^ 

DISKEY 49.^5 

DISKSCAW 4fi,&0 

OOOCE RACER 14.95 

DRgLBS 34. 95 

EASTEHN FPOtrr (19411 29.95 

EDIT 6502-ROM 199.95 

SIBASGO-RDH 44,95 

ET HONE PHONE 49.95 

FACEHAKER J4.9 5 

FAMILY fJNAUCE 49.9b 

FANTASTIC VOYACE-ROM 14.95 

FAST EDOY-ROH 34.95 

FILEFAi 129,00 

PIUE nANACER * 99.95 

FILE-IT 2 SYSTEM 49.95 

FINANCIAL WIZARD 59, 9S 

FXJLHE LORDS 14.95 

FLASH GORDON-RCM 34.95 

FLIP OUT 29.95 

FIKEeiHO-ROH 39.95 

FORMULA 1 RACII4C 29.95 

FOITT APOCALYPSE 34.95 

FROOGZK 14.95 

GMJICTIC CHASE 29.95 

GALACTIC CLAQIATOR 39.95 
OALAHAD t. THE HOLY CRAIL 29.95 

C^AUUCIAN 44.95 

GEHmc DRirr 29.97 

GHOST IHCOimTERS 29,95 

GLOW MASTER 29.99 

COLD HIHE-ROH 39.95 

GOLF CHALLEMCE 34,95 

CORF 39. 9S 

GORF-WH 44.95 

GRAPHIC CCKERATOH 24. 9S 

GftAPKlC MASTER 19.95 

GRAPHICS COMPOSER 39-95 

GRAPH IftHJCSHOP 39.95 

HC3#CE ACCOUWTAHT 74-95 

IrtTRUDER 34.95 

INVASION ORICM 74.95 
IHVTTATICN TO PIWDCRAK 3 29.95 

IT IS WALLOON 34.95 

JAWSkeuceR 29.95 



JERRY IfHITE'S fCISIC LESSCM 29.95 

JOURNEY TO TKB PLAHETS 29,95 

JUGGLER 29.95 

JUGGLES HOUSE 29.95 

Jl>GCLE5 RAINBOW 79.95 

K-OOS 89.95 

KID GRID 29.95 

KIDS AND THE ATARI-BOOK 19.95 

KIHDERCOMp 29.95 

K-RAZY SHfXJTOUT-POM 49.95 

E-RAZY KRJTTERS-RQM 49.95 

E-STAR PATROL- ROM 49.95 

E-RAZY Xh(TIICS-«OM 49-95 

EAYOS 14.95 

KING ARTHUR'S B£in 29.95 

LABTRirrTH 29.95 

LETTER PERFECT (4D/gO) 149.95 

LETTER PERFEITT-RDM {40} 199.95 

LKTTEH PERFECT UTILITY 39.95 

LI5F INTERPrreR 124-95 

LOST CDLOtlY 29.95 

LUHAR LA>IDER 2C.95 

nAI>-NETTER 14,9 5 

4A5H-RtM 19.95 



24.49 
14.49 

36-49 
31-95 
27,95 
11.95 
21 -95 
21 -95 
24-49 
17.49 
14.49 

2B.ao 

24.49 
24.49 
21.95 
144.95 
31.95 
35.95 
24-49 
iT.95 
26-49 
26.49 
89.95 
6Q.95 
34.49 
39,95 
24-95 
26.95 
21.95 
27,95 
21-95 
24,49 
24.49 
21,95 
27.95 
21.95 
31 .95 
31 .97 
21-95 
21 .95 
27.95 
17.49 
2T.9S 
28.49 
0.49 
27.95 
27-95 
27,95 
54.95 
24.49 
)7.95 
21 .95 
24.49 
21 .95 
21-95 
21.95 
21.95 
21.95 
21,95 
64-49 
2T.95 
13.95 
21 .95 
14.49 
14.49 
34.49 
14.49 
24.49 
21-95 
21,95 
1D9.95 
144.95 
21,95 
B9.95 
21,95 
14.4V 
24.49 
27,95 



MASTER TYPE iq.-j^ 27.95 

MAURAUDER i4.95 24.49 

MAK/feb (WITH 0£/A*> HO. 00 54.9^ 

MICRCPAlHTER 34.95 24.49 

MINER 2Q49'ER-WJM 49.95 14.49 

MISSILE CQiWWKD-RC« 14.95 26.49 

MCwSTgft MAZE-ROM i9,95 37.95 

HOOW BASE ro 29.95 21.95 

MOON SHUTTLE 19.95 27,95 

MOgSKATTACr 14.95 24.49 

MUSIC BOX 29,95 21.95 

Mt FIRST ALPHABET 14.95 24.95 

NAUTILUS 14,95 24.49 

NEXAR-HOM 14-95 24.95 

NUMBER CRUNCH-RDM 39.95 27.95 

ODIN 49.95 14.49 

OS-A* 4 BASIC A-*- UO.QO 54.9b 

PAC MAN-HOM 44,95 31.95 

PACIFIC COAST aiGHMAY 39.95 21.95 

PAGE 6 34.9^ 24.49 

PATHFIKOEP 34.95 24.49 

PICKNICE PARANOIA 34.95 24.49 

PIC PEK 29,95 21.95 

PlHBALL 29,95 21 .95 

PLATTER MANIA-ROM 39,95 27.95 

P.M. ANIMATOR 14.95 24-49 

POKJER-S.A.H. 24.49 17,95 

POOL 1.5 34.95 24.49 

POOL 400-ROH 39.95 27.95 

PREPARIW; FOR THE SAT 139-95 99.95 

PRIPPIE 29-95 21.95 

PRESCHOOL ID ByiLOER 23,95 17.95 

PRESCHOOL 10 ttJILDER 2 23.95 17.95 

PRISM 24,95 17,95 

PROBE I 14.95 24.49 

PROGRAMMER'S WORKSHOP 34.95 24.49 

PROTECTOR H 3-4.95 24.49 

OIX 44.95 31.95 

HEPTILIAM 34,95 24.49 

RASTER BLASTER 29.95 21-95 

RHYMES 4 RIDDLES 29.95 21.95 

RICOCHET 19.95 14.95 

SAGA *1-li; (COST BACHl 19.95 37.95 

SAMMY THE SEA SEHPEHT 21.95 ^6-95 

SCRAM 24.95 17. gS 

SEA DRAGOH 34.95 24.49 

SEA POX 29.95 2J,95 

SEKTINEL X 34-95 24.95 

SEHPESITINE 34.95 24,95 

747 LAHDIMC SIMULATOR 22.95 16.95 

SHADOW WORLD 14.95 24.49 

SHAHDE 34.95 24.49 

THE SHATTERED ALLIANCE 39,95 27.95 

SHOOTING ARCADE 29.95 21.95 

SLIRE 14.95 24.49 

SNAKE B-YTE 29.95 21.95 

SNAPPER 32.95 22.95 

SNEAKERS 29.95 21,95 

SKOOPER TROOPS •! 44.95 31-95 

SNOOPER TROOPS 12 44.95 11.95 

SOFTWARE AUTO-HOirrH (SAHJ 59.95 41.49 

SPACE EGGS 29.95 21.95 

SPACE INVADERS-ROM J4.95 26.49 

SPACE SHUTTLE 29.95 31.95 

SPEED READ PLUS 59.95 4t.49 

SPEEDWAY BLAST 29,95 31.95 

SPELL WIZARD 79.95 54. y5 

STAR BLAZER 31.95 2l,95 

STARCROS5 39,95 27.95 

STAR RAIDERS^ROM 44.95 11.95 

STAR WARRIOR 1^.95 27.95 

STORY MACHINE )4.'*5 24.49 

STRATOrt S4.^5 24.49 

SURVIVAL ADVENTURE ^4.95 16.50 

SUHVIVER 34.95 J4.49 

SWimr TACH MASTER 29.95 21.95 

STN ASSMaLEH 49.95 14.49 

TAI ApVAWTAGE 59.95 42.95 



TELEaTARI 39.95 27.95 

TELECOM 69,95 49,95 

TELETALK 49.95 36,95 

TEMPLE or APSkAI 19-95 27.95 

TEKT WIZARD I 99.95 6B,9S 

THE ADVENrjRES OF OSWALD 31.95 17.95 

THE GUARDIAN OF CORN 14.95 34.95 

THE MEKT STEP 39.95 27.95 

3-D SUPERGRAPHICS 39-95 27,95 

THRESHOLD 13.95 27.95 

TIGERS IN lUE SNOW 19.95 77.95 

TIME WISE 29.95 21.95 

TRACK ATTACK 29,95 21.95 

TRIVIA TREK 29.95 21.95 

TYPE ATTACK 19.95 27.95 

TUMBLE BUGS 29.95 21.95 

TURMOIL-ROM 34.95 26-95 

TITITI FRUTTI 34.95 17.95 

TWERPS 14,95 24.49 

ULYSESS b GOU>EK FLEECE 19,95 27.95 

UPPER REACHES OF APSHAI 99.95 13.95 

VC 35.00 J7.49 

VISICALC 250.00 179.95 

WAU. WAR 29.95 21 -95 

WARLOCK'S REVENGE 34,95 24.49 

WAY OUT 19.95 27.95 

WIZARD fc PRINCESS 32.95 22.95 

WIZARD OP HOR 39.95 27.95 

WORDRACE 24-95 17.49 

WORM WAR I-ROM 14.95 26-49 

TOUR ATARI COMPUTER-SOOE It. 95 12.95 

ZAXXOH 19.95 27,95 

20RK 1 19.95 27.95 

ZORE II 39.95 27.95 

ZORE III 39-95 27,95 

HARDWARE 

AKDEK COLOR I 11* MCM. 339.95 

ATARI HOME COHPUTER5 fCALL 

ATARI NUMERIC KEYPAD 94.95 

4 10 RECORDER 72.9b 

mo dise drive 424.95 

B50 INTERFACE MODULE 169.95 

C. irOH PROWRITER J 194.95 

C. ITDH PROWRITER II 649.95 

C ITOH STAHWRITER 1325-00 

ELEPHANT SE/SD DISK 10/18.95 

IN HOME 400 RCYSOARD 94.95 

INTEC 12k ram 69.95 

INTEC 4SK RAH 119.95 

MOSAIC &4K RAM SELECT 149.95 

AJILON I38K RAMDISK 464,95 

HATES SMARTHODEH 100 BD 194,95 

HAYES SHARTNODEM 1300 BD 499.95 

K-BYTE STICK STAND 5.95 

LE STICK 29,95 

NEC a02) PRINTER 459.95 

NEC 12- MIRES GREEK SCfW 149.95 

NEC 12" ECONO CftEEN SCRW 109.95 

NOVATION J-CAT M0DD< 109.95 

NOVATION SMART-CAT 101 179.95 

NOVATiCW SMART'CAT 112 429.95 

PERCOM SS/SD/IDR I BUM) 419.95 

PERCOM SS/DD/IDR (176K) 539.95 

PERCOM S£/D!J/2DR5 tl52KJ 859-95 

PERCOn DS/DL/IDB C 3i2KJ 649,95 

PEPCO« DS/0C/2DRS ! T04KJ 919.95 

SIGNALMAN MK U MOOEM 79.95 

USI 12- AHBZR HONITQIt tS9.95 

verbatim ss/dd disk 10/25,00 

versahriter Graph tablet 339.95 

WlCO JOYSTICK 21.95 

WICO REDBALL JOYSTICK 24.95 

WICO DELUKE JOYSTICI 29.95 

WICO TRACIUBALL 49.95 

WICO 12 FT EKTEKSICH CORD 6,95 



A 



Can us... we can help I (619) 765-0239 

P.O. Box 1099, 2225 Main Street Juliaa Calif. 92036 ATARI 



TERMS: WE ACCEPT VISA/MASTEBCARD| 

iiquHliiil >v. shig UPS surface! "'"' .ddiisi requvfi* 
fjjipptftg and lundlinq ol morvlQis due to tfieii exCMirye weiortl 

A..,™„,.™,„d.,,,,..u,«,u,.,,„.,,,„^,;fc„-T,r;=::;^^^^^^^^^ 



^Tn'd\'^a°S■n,a*?J'^°'®*^9V^^ f^^lL ORDER HOUSE for the micro computer industry 

and ,s a Cal,forn,a corporation nol aff.hated w,th Apple Computer Ina Apple is a trademark of Appte Computer Inc 



B. Don't distract the machine while it is trying 
to get your calculation done. 

C. Avoid unnecessary or time-consuming 
operations, particularly in loops. 

Type A advice includes selecting the most 
efficient algorithm, rewriting heavily revised pro- 
grams to eliminate the tangles, and substituting 
machine language for BASIC loops, via USR sub- 
routines. Advice in categories B and C is usually 
more specific, recommending particular machine 
operations or program sequences. 

Turning The Screen Off 

Fixes of type B might involve shutting down the 
screen t)r using a lower resolution graphics display 
while calculations are in progress. Screen support 
in Graphics mode occupies 31 percent of the 
Atari's time, which may be saved with POKE 
559,0 before entering the calculational loop and 
later POKEing 559,34 to get the display back. An 
additional three percent saving accrues when the 
display processor is turned off by inserting a one 
in register 66 in place of the usual zero. The displa v 
processor should be disabled after the screen, but 
not before the next vertical blank period; wait 17 
milliseconds (nis) to be sure. Before the machine 
gets down to serious computation, all INPUT, 
READ, and disk access operations should be com- 
pleted. Removal of such extraneous activities from 
its workload leaves the 6502 free to crunch your 
numbers as fast as BASIC will allow. 

Most timesaving programming hints are of 
type C. BASIC branches to a line number or re- 
turns to a FOR statement by searching line num- 
bers from the start of the program; thus, fret]uently 
used destination lines and loops should have low 
line numbers. Similarly, variables, matrix ele- 
ments, and strings must be looked up in the vari- 
able name table and should be near the beginning 
of the table if they are used often. 

GOSUBs and loops remember where to return 
by saving that line number on a stack. Removing 
GOSUBs from loops and placing the most repeated 
loop deepest in nested loops should minimize 
such stack operations. Calculations may be need- 
lessly repeated by placing them within a loop. For 
example, multiplication every time through a 
loop can often be replaced by multiplying the 
sum once after the loop is completed. Most of 
these hints are based on a valid premise, but some 
offer negligible time savings. 

Some contradictory admonitions are also in 
circulation. Preferences for both variables and 
constants in BASIC statements have appeared. 
The relative merits of IF _ THEN _ and ON _ 

GOTO , , conditional branches are debated 

in letters to the editor. Some confusion may de- 
velop when the characteristics of one computer 

240 COMPUTE! MovW83 



are assumed to be the same as those of ant>ther. 
For the Atari, constants are actually marginally 
faster than the equivalent variable. Constants are 
ten to forty times slower to read in a BASIC line 
for both PET and Apple, which is the reason why 
BASIC games written for these machines all seem 
to start with the sequence, Nl = 1:N0 = NI-N1: 
N2 = N1 + N1:.... The construction IF A THEN _ 
which fails (A = 0) is the single fastest BASIC op- 
eration for all three machines, but ON GOTO 

may be preferred for the PET under most 

conditions. 

Timing Functions 

The time for an operation in BASIC is easily de- 
termined: set up a loop to perform the operation 
some number of times and then read the internal 
clock (RTCLOK at 18, 19, 20; notice that the order 
of bit significance is the reverse of that given in 
Appendix I of the Atari BASIC Refemice Maiimi) 
before and after the loop. The following program 
does this timing for any desired operation substi- 
tuted for FUNCTION(A) in line 50. Loop overhead 
time is obtained by removing the f miction from 
the loop. 

10 REM «* BASIC FUNCTION TIMER ** 

2 W=1000:DVERHEAD=1.5S3 33 333:A=-I.2 

345678<?:B = S'.B7654321 
30 FOR K=l TO 3 
40 POKE 559. 0: X=PEEK <20) +PEEK ( 19 ) * 

256 
50 FOR 1=1 TO N: C=FUNCTIDN ( A ) : NEXT 1 
60 Y = PEEK ( 20> +?££!<:( 1 9) *256: POKE 559, 

3 4 
70 ? ( lOOO/N) » ( Y-X ) /60-OVERHEAD; " ms, 

C = " , C 
80 FDR J=l TO 1000: NEXT J: NEXT K 

Line 20 establishes parameters for the loop. 
The variables used in the loop should have nine 
significant figures because some functions are 
faster with fewer digits. The POKE 359,0 com- 
mand in line 40 turns off the TV screen so that we 
can obtain times independent of screen support. 
The clock is read in lines 40 and 60 with the differ- 
ence printed in 70. The K loop (lines 3[)-80) repeats 
the measurement so that we may see any clock 
rollover and roundoff effects, and the J loop in 
line 80 allows us to observe the results between 
runs. 

The time data in the table demonstrate that 
Atari BASIC operates in the millisecond time do- 
main which corresponds to a few thousand 
machine cycles. Addition and subtraction require 
two milliseconds. Multiplication and division are 
several times longer. Logarithms, exponentiation, 
trigonometric functions, and square roots take 
about a tenth of a second. It is clear that we should 
avoid using the latter functions in loops whenever 
possible. 

Integer powers up to 12 or more are actually 
faster by direct multiplication. As an example. 



BASIC Operation Times (milliseconds) [a] 

Arithmetic Functions 

A + B 2.0 A»B 3-12[b] 

A-B 2.1 A/B S[c] 

SQR 99 A'B 150 

COS Sllf] CLOG(B) 84 

SIN 51[f] LOG(B) 89 

ATN 79[fl EXP(B) 76 



Assignments 



Special Functions 



A = #[d] 
A = B[e] 

A = B + 1 

A = A(3,3) 
A(3,3) = A 



1.15 
1.18 

1.5 
2.0 
4.4 
4.0 



PEEK( ) 
POKE_,_ 
FRE(O) 
RND(O) 
ABS( ) 
INT( ) 
SGN( + ) 
SGN(-) 
ADR 



3.1 

2.5 
2.5 
9.5 
1.7 
1.8 
1.8 
2.1 
2.5 



Strings [gl 



Graphics 



ASC 2.6 

CHR$ 2.5 

LEN 2.6 

STR$ 2.5 

VAL 3.7 

C$ = B$ 1.5 

C$ = B$(I,I) 3.9 

A$(I,I) = B$ 3,6 
C$(I,J) = B$(K,U 6,1 



GRAPHICS 

COLOR 

SETCOLOR 

SOUND 

PLOT 

LOCATE 

POSITION 

STICK/STRIG 



15-81 

1.1 

3.1 

2.9 

2.9 

4.7 

1.1 

2.8 



Branches and Loops 



line look up 

FOR/STEP/NEXT 

GOSUB/RETURN 

GOTO 

ONNGOTO_„ 

1F_THEN_ 

A = 

A = #orvar. 
A 
TRAP (set) 



0.041 ms per line 

1.7 (all in one line) STEP adds no time 

1.7 (to line 2, return to line 4) 

(2.0 to line 2) 

(1.2+ N) 



false 
1.4 

1.7 
0.52 

2.0 



true 

2.5 
2.9 
1.7 



LPRINT with no printer 930 
A{3,4) = A with DIM A{3,3) 3. 
GOTO 1 with no line 1 1.7 



X = USR(addr,A,B) 
(# variables passed: 



3.5, 4.6, 6.1 
0, 1, 2) 



[a] Measured with the screen off and the display processor 
on; multiply by 1.45 to get normal graphics mode time. 

[b] Multiplication time varies from 3.1 to 12.3 ms depending 
on the sum, S, of digits in the multiplier only. T(ms) = 2.99 + 
.1154*5 (see text). 

[c] Division takes 8+/-2 ms with rare extremes of 5.3 and 
12.3 ms. 

[d] # means 1.23456789 was entered in the BASIC statement, 
le] All Atari BASIC functions require 0.035 ms longer to get a 
variable than read the same number in the BASIC line. 

[f] Trig functions take the same time in degree and radian 
modes. 

[g] String operations involve 10 characters except as noted. 



R2 = X*X + Y*Y + Z*Z takes only 23 ms, while the 
more typical R2 = X"2-l-Y"2-(-Z"2 requires 460 
ms. The SQR function does offer a one-third 
savings compared to R"{0.5), but 0.1 second is 
still a long time. 

The time required for trig functions suggests 
that it might be quicker to cast problems in a geo- 
metric format and use triangle ratios directly. A 
better solution is to calculate the trig functions 
separately and pass the values to the loop as vari- 
ables. The binary operations addition, subtraction, 
and division show little effect of operand order, 
digit size, or the number of digits. 

Multiplication is more complicated in Atari 
BASIC. It depends almost exclusively on the mul- 
tiplier, the left member of the product A*B. Both 
the number and magnitude of the digits in the 
multiplier are important, but in a simple way. 
The sum, S, of all the digits in the multiplier 
determines multiplication time according to the 
relation, T(ms) = 2.99 + 0.1154*5. So, small 
numbers should be multipliers and larger ones 
multiplicands. 

An example of this occurs in the Timer pro- 
gram above, where a two-byte number is read 
from memory with the statement: 
PEEK(20) + PEEK(19)*256. This statement has the 
preferred form because the most probable sum of 



digits in an unknown byte is 10 compared to 
2 + 5 + 6 = 13 for the multiplicand. This kind of 
information should allow time savings every time 
a program is written. 

Looking Up Variables 

Something that doesn't appear in the table is the 
observability of differences in lookup time for 
variables. Comparison of reading times for vari- 
ables separated by 35 positions in the variable 
name table failed to show any time differences. 
The idea that a low position in the variable name 
table would yield shorter access times for loop 
variables is not borne out in practice. Another 
great idea ambushed by the facts. It is also possible 
to compare read times for constants and variables 
since BASIC treats floating point numbers from 
any source the same way. Variables require 0.035 
ms longer than constants in all operations. 

A closer look at the table indicates that the 
one millisecond time scale probably represents the 
overhead time associated with BASIC itself. Even 
the functions ABS and SGN, which interact with 
only the single sign bit of a number, require about 
two ms for execution. I had expected that the more 
direct byte manipulations of memory such as 
PEEK, POKE, and strings would be very fast com- 
pared to floating point number juggling. Such is 



McYl9a3 COMPIfn> 241 



not the case, as can be seen bv comparing the 
times forCS = BS, 1.5 ms, and A = B, 1.2 ms, where 
both involve ten characters. 

Matrix element assignments are significantly 
slower than variable or string assignments. Cal- 
culation of indexed element locations in the string 
array table probably accounts for the extra time in 
both matrix and substring operations. Atari's spe- 
cial graphics functions all proceed with reasonable 
alacrity. 

Even the GRAPHICS command {which takes 
80 ms in mode 8) is not slow, considering that it 
completely rewrites screen memorv. The principal 
use for speedy graphics functions is in writing 
games, and one caveat in this area is that the often 
used random number generator is quite slow at 
9.6 ms. BASIC game designers who need random 
numbers wouki do well to prepare a table outside 
the main game loop. 

Probably the most interesting time-saving 
features are in the branches and loops section of 
the table. The time required to compare each line 
number with the destination line number is onh' 
0.04 ms, which can add up in a hurry, or perhaps 
I should say slowly. In the megapass interior loop 
of the program mentioned earlier, finding the 
FOR statement in line 5 took a little over three 
minutes, but it would have required over two 
hours in the original form of the program. Each of 
the branch times in the table should have appro- 
priate line hookup times added. 1 reallv don't 
suggest that you do such calculations, but rather 
that you realize the implications and organize 
vour programs accordingly. 

A one-line FOR/NEXt loop takes 1.65 ms per 
cycle; placing the NEXT statement in the following 
line increases the repeat time to 1.71 ms. This 
means that BASIC uses 0.06 ms to fetch the next 
line. The savings of in-line FOR/NEXT loops are 
small compared to other time-savers. The 
megapass loop above took only one minute per 
line for fetching the next line or about one percent 
of the total loop time. Inclusion of a STEP in the 
FOR/NEXT counter adds no time because the step 
is ahoays there, with a default value of one. 

Fast GOSUBs 

As the table shows, a GOSUB-RETURN sequence 
takes less time than a GOTO. This is unexpected. 
Particularly in view of the fact that branches with 
returns (GOSUBs) must first leave their intended 
return address on a "stack" in the computer, for 
later reference. I suspected some sort of error in 
at least one of these measurements, but several 
more measurements in different program envi- 
ronments gave consistent results. Why? Anyone 
know? 

The conditional branch commands ON — 
GOTO _, , and IF _ THEN _ vary in time 

242 COMPUTI! MavWSa 



requirements depending on the wav they are 
used. "The road not taken" with A = 0:1F A THEN 

is the quickest thing BASIC can do (or not do), 

taking 0.52 ms on the Atari. This quick test could 
be very useful in determining when to leave a 
many-pass loop because it is so much faster than 
anything else. The IF construction is faster than 

ON GOTO for simple decisions, but the 

latter is superior to a sequence of IF statements 
for multiple branches. 

It is also worth noting that the more frequently 
chosen destinations should be moved to the front 
of the GOTO list because each position costs one 
ms per branch. The TRAP statement is included 
among conditional branches because that's what 
it is, and because it is occasionally used to make 
exit decisions in loops. The time required for trap 
branching is essentially the time needed to try the 
operation, establish an error condition, then 
branch. The fastest trap I've found is to GOTO a 
nonexistent line 0. TRAP is useful to test whether 
a disk drive or printer is on-line, but these opera- 
tions can take many seconds before an error is 
established. 

USR Times 

The last entry in the table is the USR function 
which calls a machine language subroutine and 
passes variables to the subroutine. BASIC converts 
the floating point variables into two-byte integers 
and leaves them in designated memory registers. 
The three times listed correspond to passing none, 
one, or two variables. The subroutine tested here 
performed the housekeeping required by USR 
(clearing the processor stack) and returned. 

Minimum time for machine language inter- 
facing is over three ms; thus, USR calls will not be 
an effective way to accomplish isolated operations 
quickly. A better approach would be to construct 
entire loops or functions which can take advantage 
of machine language speed, particularly integer 
arithmetic, without repeated returns to BASIC. 

Adding It All Up 

When I first needed to know how long the Atari 
takes to do things, I was surprised that such data 
had not already been published. After taking the 
measurements, I find it much easier to under- 
stand. The results often vary in different program 
environments, and complete definition of "pro- 
gram environment" is not easy. Even so, the rela- 
tive times for alternative operations should be 
consistent in other situations. You should be able 
to make better programming choices from the 
data presented here. A number of general obser- 
vations about Atari BASIC are worth repeating: 

• Nothing much happens in less than 1.2 ms. 

• Constants are faster than variables, but not 
enough to get excited about. 



• Multiplication is a complicated affair in 
which we want to put the least first. 

• Logs, roots, trigs, and powers take a while. 

• Despite their simplicity, strings are slower 
than floatingpoint numbers. 

• Access times for matrix elements and sub- 
strings are much longer than variables and 
whole strings. 

• Lookup times within the variable name 
table and variable value table were too short 
to measure. 

• Runtime stack operations don't appear to 
be very time-consuming. 

• Calling the next line costs only 0.06 ms 
which, by itself, isn't enough to justify line 
packing. 

• Special number modes such as degrees, 
radians, and scientific notation have no 
measurable effect on operation times. 

• The single most effective time-saver is to 
turn off the screen. 

Programs should be organized to isolate the 
most time-consuming parts so that special atten- 
tion is needed only in these sections. The entry 
routine placed at the back of the program should 
take care of program setup, including all input, 
disk access, and other slow interactive processes. 

The main routine may have large parts which 
are not repeated and use little time. The time- 
consuming parts should be moved to the front of 
the program as a subroutine and carefully op- 
timized using the timing information in this article, 
line packing, or anything else that leads to 
maximum efficiency. The latter part of the main 
routine cleans up after the fast subroutines and 
delivers the results to an output routine which 
displays and prints them. 

If the program is interactive and includes 
frequent reruns, then reentry points which take 
advantage of the original setup should be pro- 
vided. The sequence in the program listing will 
be (1) branch to entry, (2) optimized subroutines, 
(3) main routine, (4) output, and (5) entry. I seldom 
succeed in preparing a program in this manner 
from the beginning, but reorganization with these 
goals in mind is very effective. 

References 

D. T. Pieie, "Prime Time," Creative Cvniptititi'^ 8, June 

1982, p. 107. 
Ed Stewart, "Unleash the Power of Your Atari CPU," 

COMPUTE1, April 1981, p. 102. 
Bill Wilkin.son, "Insight: Atari," COMPUTE!, January - 

May 1982. 
Lane Winner, "The Atari Tutorial Part 6: Atari BASIC," 

Byte, February 1982, p. 91, and De Re Atari, chap. 

10, Atari, Inc., 1981. © 



CALL NOW 

TOLL FREE INFORMATION 
PRODUCT OR SHIPPING 

800-8 

IFORN 



'^^ARl 600 
NEC 6023 A 

okidata a? A 

S^M^.^Of^ONA JP-1 



529.00 
469.00 
<39.00 
45900 
209.00 
269.00 
599.00 
S5.0O 
299.00 
109.00 
25.00/box 






THE SOFTWARE AND COArtPUIER SERVICE STORES 
1 6609 1 /2 VENTURA BLVD. TARZANA, CA 9 1 356 
TOLL FREE SOO/621-2169 CAUF.213/99<!h5722 



FOR FREE QUARTERLY NEWSLETTER DROP US A UNE 



STOP PLAYING GAIVIE 




I Calculate odds on HORSE RACES wilti ANY COMPU- 
TER using BASIC. 

I SCIENTIFICALLV DERIVED SVSTEM really works, TV 
SlaliDJi WLKY ol Louisville, Kentucky used Ihis syiem 
10 predict Itie odds of Ihe T9B0 Kentucky DerDy See 
We Will Slfeei Journal (June 6 19801 article on 
Hofse-Hanoicappmg This system was written and 
used Dy computer experts and is now tjefng made available to nome computer owners Tnis 
melfiod IS teased on storing data from a large numberot races or a tiign speed large scale 
computer 23 laclors taken from me Daily Racing Form were then analyzed by ine 
computer to see tiow ttiey influenced race results From tfiese 23 (actors, ten were found to 
Db Ihe most vital m determining winners NUMERICAL PROBABILITIES ol eacn ol tncse 10 
factors were men computed and this forms the hasis ol this REVOLUnONARV NEW 
PROGRAM 

I SIMPLE TO USE Obtain Daily Racing Form Ihe day before the races and answer the 10 
questions about each horse Run ttie program and your ccriipufer will print out Ihe odds lor 
ali liorses in each race COMPUTER POWER gives you Itie advantage! 

r YOU GET u Cassette 

2J Listing ot BASIC prcgram tor use with any computer 

j| Instructions on how to get ine needec date Irom the 'Daily Racing Form"' 

i\ Tips on using the odds generated by rne program 

b) Sample lorni to simplify entering oaia lor each race 



MAIL COUPON OR CALL TODOV 

3G COMPANY, INC. DEPT.CO 

RT. 3, BOX 2aA, GASTON, OR 97119 

Yes. I want to use my computer lot FUN and PROFIT. Rease send nne 

at SZ4.95 MCh. Circle the cassette you need TRS-80. Color-SO. Apple 
VIC20. Commodore 64, Sinclair Time« lOOO or Alan 

Enclosed is: □ check or money order D MasterCard □ Visa 

Card No 
NAME 



(503) 357-9689 



_ programs 

PEf/CBM. 



bp date 



ADDRESS _ 
CITY 



START USING YOUR COMPUTER FOR 

FUN and PROFIT! 



Versatile Data 
Acquisition Witli VIC 



Doug Horner end Stan Klein 



This simple itiethod of adjusting the VlC's internal jiffy 
clock can slow it down to match your tinting )!ceds 
making possible "variable speed" machine language 
subroutines. You can save a good amount of money by 
transforming a VIC into this special-purpose tool. You 
can even use this to speed up games. 



Home computers are finding their "homes" in 
labs, more and more frequently. Their flexibility 
and low cost make them excellent substitutes for 
more expensive special equipment. One common 
use is as a data acquisition device. Data acquisition 
systems monitor and record informahon on ex- 
periments in progress. For example, a chemist 
may use a special electrode to measure the con- 
centration of a particular component in a chemical 
solution. As the concentration changes, the 
electrode sends a varying voltage to an analog-to- 
digital converter. The converter changes the vol- 
tage signal to binary data which can be recorded 
and stored for later analysis. 

To log the data, the chemist could use a 
special-purpose data acquisition system perhaps 
costing thousands of dollars and useful only for a 
particular type of experiment. On the other hand, 
a microcomputer could be programmed to perform 
the same function. Moreover, to perform another 
type of experiment, the chemist need only modify 
the program instead of buying new equipment. 
When the data is stored, the computer might also 
be useful in analyzing it. 

Surprisingly Simple 

There is a surprisingly simple method for con- 
verting the VIC into a data acquisition system. A 
good acquisition system is based on a clock which 
uses interrupts to sample the user port at adjust- 
able, fixed intervals. Data acquisition software is 
usually complicated because you must worr}^ 

244 COMPimi May 1983 



about interrupts generated from the jiffy clock. 

A simpler scheme is to append the data ac- 
quisition routine to the front of the interrupt ser- 
vice routine which is already functioning in con- 
nection with the jiffy clock. Every 16.667 mil- 
liseconds, VIC interrupts whatever it is doing to 
look at the keyboard and update the jiffy timer. 
Here's how to attach your own program to the 
jiffy service routine and how to set the jiffy clock 
to any rate of data acquisition. 

To change the number of interrupts per sec- 
ond, just POKE different numbers into the low 
timer latch (37158) and the high timer latch (37159). 
Under normal operating conditions, these bytes 
are loaded with 137 in the low latch and 66 in the 
high latch. An interrupt is generated and the 
latches are reloaded into the counters whenever 
the counters are decremented to zero. The number 
of cycles between interrupts is two cycles greater 
than the number in the latches. 

You might expect the counter to be loaded 
with 16667 less two, since the normal interrupts 
are every 1/60 of a second; but 66*256 + 137 = 17033 
rather than 16665. This means simply that the "1 
MHz" counter decrements at 1.022*10'' Hz, not at 
an even rate of 1.00*10*' Hz. So, to make the jiffy 
clock interrupt at a rate different than the normal 
1/60 per second, just multiply the desired number 
of microseconds per interrupt by 1.022 and sub- 
tract two from that number. Example: for a mil- 
lisecond interrupt (1000*1. 022)-2= 1020, so you 
would POKE 3 into the high byte at location 
37159, and 252 into the low byte at location 37158 
(3*256 -I- 252 = 1020) -and now you have an inter- 
rupt every millisecond. 

There are limits to this method of changing 

the jiffy clock to produce varied interrupts. At the 
slow end, the largest number that could be loaded 
is $FFFF, or 65535. For the longest time interval 



■■<QJPU $Ef\JSEi:. 

CARDBOARD 6 
$87.95 

An expansion interface for the VIC-20. 
Allows expansion to 40 K or accepts up 
to SIX games, f^ay be daisy ctialned for 
more versatility. 

CARDBOARD 3 
$39.95 

Economy expansion interface for 
the VIC-20 

CARD"?" CARD/PRINT 

$79.95 

Universal Centronics Parallel Printer 
Interface for ttie VIC-20 or CBf\/l-64. 
Use an Epson fVlX-80 or OKIDATA or 
TANDY or just about any other. 

CARDETTE 
$39.95 

Use any standard cassette player/re- 
corder witti your VIC-20 Of CBfv1-64 

LIGHT PEN 
$29.95 

A light pen with six good programs to 
use with your VIC-20 or CBM-64 



Prices subject to change. 
TO ORDER: P. O, BOX 18765 

WICHITA. KS 67218 
(316)263-1095 

Personal Checks Accepted (Allow 3 Weeks) 
or COD. (Add S2) Handlrng Charges S2 00 



ViC-20 & 64 & 
ir PET OWNERS 1^ 

NEW AUTHENTIC PROGRAMS 

CASINO CRAPS 

•Any bet made in Vegas, 
nov^/ can be [nade at home. 

•Ttie Field Hardways- 
Place Bets-Come-Pass Line 

•Find a winning system, withiout 
losing G dime, 

8K version (1 player)$10.95 

1 6K version f5 playersIS 1 2 .95 



KONN EOT FOUR 

•Nov^ play ttiis popular game 
against your pet. 
•Excellentsound &graphics 
•Real time clock 
•Ttiree levels of ploy 
•Can fit into 8K 

• Fun &. Educational for all ages 
ONLY$10.95 



GP Microsystems 
72-31 67th Place 
Glendale.N.Y, 11385 

Please include S 1 .SOshipping 
Schandlingfor each program. 
Indicate version. 



The "Right" Angle 

in 

Personal 

Computing 






COMPUMATE 101 

The microelectronic revolution 
brought the reality of the personal 
computer into our homes and 
offices. And with it, the need for 
an effective human interface to 
insure the productivity of your 
system. 

The COMPUMATE 101 is 
ergonomically angled for optimum 
monitor viewing. The unique 
wedge design has also been dual- 
engineered as a printer stand 
featuring improved readability. 

Manufactured in rugged smoked 
gray acrylic plastic, the versatile 
COMPUMATE 101 provides 
operating ventilation for detached 
keyboard computer docking. 

Trimmable support ribs accom- 
modate side entry of ffat data 
cables and its raised configuration 
allows excellent space saving 
paper feed management for the 
printer application. 

The COMPUMATE 101 nominal 
dimensions are 20.5" wide x 12.0" 
deep, 5.5" high at the crest of the 
angle. 

COMPUMATE 101 adds profes- 
sional features at a price the 
personal computer user can 
justify. 
Priced at S39.95 

Standard Shipping FOB Factory 
Via UPS 

• Mastercard and Visa Accepted • 
Phone 1 (314) 968-6557 

Please Allow 4 weeks for delivery. 
PO Box 1018 • Ballwin, MO 63011 



COMIVIADORE 64 

vic-ao 





0) 
< 

u 

■ 

L 


-D 

C 
B 



10 
N 
h 

X 


D 

d 
a. 



8 Expansion 
Connectors 



Each Switched 
Individually 



Fully Enclosed 
Chassis 



Master Power 
Switch with 2 



110v AC OUTLETS 
for computer 



and accessories 
RIBBON CABLE 



Connection 

for convenient 

placement 



LED DISPLAY 
RESET Button 



120 day chassis 

1 yr power supply 

WARRANTIES 



finger tip 
selection of 



game and other 
Cartridges 



Optional 5 volt 
Power Supply 



removes power 

load from your 

computer 



THE 
SOFT-AWARE BOX 

the most advanced 
expansion chassis 



S149.00each 

Power Supply 

S35.00each. 




L 
B 
•D 
L 




■ 
(. 
3 


£ 



C 
£ 

i 

■a 

« 
a 

Q. 

I 
n 



SOFT-A\A/ARE 

P.O. Box 725, Glendora, CA 91740 



Vie-ao and GBM S4 mrm crudsmarkB 
of Commodar* Vuvlnssa Msohln«« 



Interruptions Can 
Make Your Games 
Run Faster 

Ottis Cowper, Technicol Editor 

This is a very powerful programming tech- 
nique, the interrupt driven subroutine, which 
has a much wider range of applications than 
merely gathering data from the user port. 
For example, how would you like your com- 
puter to handle two jobs at once? Actually, 
the 6502 microprocessor is a sequential device 
and can only do one operation at a time, but 
the VIC's hardware interrupts occur so fre- 
quently (60 times per second) that a machine 
language interrupt routine can appear to 
work concurrently with BASIC. 

A Demonstration 

As a demonstration, make the additions and 
changes shown in Program 1 to the program 
in the article. (This demonstration is for the 
uncxpanded VIC and requires a joystick. 
Remove or disable any expansion modules.) 
Since the DATA statements contain a 
machine language routine, they iriiist be 
typed in exactly as shown. Be sure to save a 
copy of the program before you RUN since 
an error in an interrupt routine almost always 
causes your system to lock you out. For those 
interested in the operation of the routine, 
a disassembly of the code is provided in 
Program 2. 

When you RUN the program, you 
should see a bar appear in the center of the 
screen. Try moving your joystick left and 
right and notice how smoothly the bar moves. 
Type in a new value for the high and low 
bytes of the timer. Higher timer values slow 
down the bar movement; lower values speed 
it up. Compare this to the slow and jerky 
movement you're used to in BASIC, and 
imagine how an interrupt joystick or charac- 
ter movement routine would improve your 
favorite game. 

The main point is that the joystick 
reading and bar movement are totally inde- 
pendent of BASIC. To prove this to yourself, 
hit the STOP key. You'll see the message 
BREAK IN 35. The BASIC program has 
ended, but the interrupt routine is not af- 
fected. The bar movement continues as 
before. To disable the routine, hit the RUN/ 
STOP and RESTORE keys at the same time. 



How To Add It To Your Programs 

Here is the procedure for adding an interrupt 
driven routine to your BASIC program (ex- 
ample lines from the program given in the 
article are noted in parentheses): 

1. Reserve room for the new routine 
somewhere in memory (line 10). 

2. Load the machine language code into 
the protected area (line 15). 

3. Disable interrupts, load the address 
(known as the "interrupt vector") of the 
new routine into locations 788 and 789, 
and re-enable interrupts (line 20). 

4. If necessary, modify the speed of the 
interrupt routine by adjusting the rate of 
the jiffy clock (line 30). 

5. It is absolutely essential that the ap- 
pended interrupt routine end with a 
JuMP to the normal ROM interrupt 
handling routine (for the VIC, this would 
be JMP $EABF). 

Program 1: Demonstration Program 

11 PRINT" {clear}" 

1 2 FORI=38400TO38905 : POKEI , : NEXT 

13 POKE 1,8:POKE2,10 

14 FORI=0TO2:POKE7909+I,160:NEXT 

15 FORZ=0TO69:READQ:POKE( 28*256+2), Q:NEXTZ 

22 DATA 166,1,164,2,169,127,141,34,145,173 

23 DATA 31,145,41,16,240,26,173,32,145,41 

24 DATA 128,208,35,192,21,240,31,169,32,157 

25 DATA 220,30,232,200,169,160,153,220,30,24 

26 DATA 144,16,224,0,240,12,169,32,153,220 

27 DATA 30,202,136,169,160,157,220,30,134,1 

28 DATA 132,2,169,255,141,34,145,76,191,234 
3 5 GOT03 5 

Program 2: Disassembly Of Mactiine 
Language Routine In Program 1 



1C00 
1C02 

1C04 
1C06 
1C09 
1C0C 
1C0E 
1C10 
iC13 
1C15 
1017 
1C19 
ICIB 
ICID 
1C20 
102 1 
1C22 
1C24 
1C27 
1C28 
1C2A 
1C2C 
1C2E 
1C30 
1C33 
1C34 
1C35 
1C37 
1C3A 
1C3C 
1C3E 
1C40 
IC43 



A6 01 

A4 02 

A9 7F 

80 22 

AD IF 

29 10 

F0 lA 

AD 20 

29 80 

D0 23 

C0 15 

F0 IF 

A9 20 

9D DC 
E8 
C8 

A9 A0 

99 DC 
18 

90 10 

E0 00 

F0 00 

A9 20 

99 DC 
CA 
88 

A9 A0 
9D DC 

36 01 

84 02 

A9 FF 
8D 22 
4C BF 



LDX 
LDY 
LDA 

91 STA 

91 LDA 
AND 
BEQ 

91 LDA 
AND 
BNE 
CPY 
BEQ 
LDA 

IE STA 
I MX 
I NY 
LDA 

IE STA 
CLC 
BCC 
CPX 
BEQ 
LDA 

IE STA 
DEX 
DEY 
LDA 

IE STA 
STX 
STY 
LDA 

91 STA 

EA JMP 



$01 
$02 

#?7F 

$9122 

?911F 

#S10 

S1C2A 

$9120 

#$80 

51C3A 

*$15 

$1C3A 

#520 

SIEDC.X 



#?A0 
51EDC,Y 

S1C3A 

*500 

$IC3A 

#S20 

$1EDC,Y 



#?A0 

$1EDC,X 

?01 

$02 

#$FF 

$9122 

?EABF 



246 COMPUTl! Moyl'Sa 



VIC-20 6l C64 

Exclusive needs. . . Exclusive source! 



Hardware Peripherals: 


V%l IIA 


VlC-20 Color Computer' 


S149.00 


Commodore 64' 


475.00 


VIC-^525 Printer' 


325.00 


VIC- 1541 Disk Drive' 


325.00 


CIE Cartridge (IEEE-488 for C64] 


95,00 


VIE Cartridge [IEEE-488 for VIC-203 


75.00 


RS-232R Interface for VIC or C64 


45,00 


SPI Parallel iriterface for VIC or C64 


55.00 


VPI VIC Parallel Interface 


45.00 


VEX^3 Expander 


29.96 


VEX-6 Expander 


85.00 


V3K RAM Expansion 


35.00 


V8K RAM Expansion 


45.00 


V16K RAM Expansion 


85.00 


V24K RAM Expansion 


115.00 


40/80 Col ViC Video Expander w/ldh 


; 250.00 


80 Col C64 Video Expander 


150.00 


C64 Z-80/80 Col CP/M Cartridge 


250.00 


VAC Audio Cassette Interface 


25.00 


VMC/CMC VIC & C64 Monitor Cables 15.00 


Joy Sticl< (Arcade Quality) 


25,00 


Atari Game Interfoce for VIC-20 


65.00 


C64 Software Products: 




EPYX-Temple of Apshai' 


Disk 39.95 


EPYX-Upper Reaches of Apshai^ 


Disk 19.95 


EPYX-Curse of Ro^ 


Disk 19.95 


EPYX-Sword of ForgoaP 


Disk 29.95 


EPYX-Crusti, Crumble & Ctiomp^ 


Disk 29.95 


Wordpro 3 -r Wordprocessing- 


85.00 


Info Designs Soft Pack (G/L,A/R,A/P)* 


475.00 


Data Base for C64 


75,00 


Financial Spreadsheet tor C64 


125,00 


Super Sprite Cassette 35,00 


Disk 35.00 


Mail It 64 Cassette 20,00 


Disk 25,00 



Southuuest Micro Systems Inc 



'Trademark of 
Commodore Inl 



Dealer inquiries invited. 

'Tfademork ol 
Creotive Software 



=Trademork of 
EPYX Software 



8.95 
12.95 

45.00 
49.95 
45.00 
45.00 
15.00 



Cassette 15.00 
Cassette 15.00 



VIC-20 Software Products: 

VTE/CTE Terminai Program for VIC & C64 

Cassette 

Diskette 
VT-40 VIC 40 Col Terminal Communicator 

Cartridge with Downloading' 
VIC Super Expander' 
VIC Programmers Aid Cartridge' 
VIC Intro to Basic Part I & IP 
Home Inventory^ Cassette 12.00 Disk 

Household Finance^ Cassette 25.00 Disk 30.00 
Logic Games^ Cassette 10.95 

Action Gomes^ 
City Bomber & Minefield^ 
Black Hole Game= 
Troshiman Game^ 
Astroblitz Game^ 
Choplifter Game^ 
Serpentine Game^ 
Apple Panic Game^ 
Terraguard Game= 
Videomanic Game^ 
Spills & Fills^ 
Pipes^ 

EPYX-lnvasion of Crion (16K Extra]^Cassette 24.95 
EPYX-Datestones of Ryn (16K Extra)^Cassette 19.95 
EPYX-Rescue at Rigel (16K ExtraP Cassette 29.95 
EPYX-Crush, Crumble & Chomp (16K ExtraP 

Cassette 29.95 
EPYX-PlQttermania^ Cartridge 39.95 

Heswriter for VIC-20^ Cartridge 39.95 

HES-MON tor VIC-20'^ Cartridge 39.95 

HES-Turrle Graphics'^ Cartridge 39.95 

Data Base for VIC-20 Disk 55,00 

Wordprocessing for V(C-20 

Cassette 65,00 Disk 65.00 



immediate delivery on all items. 



Cartr 
Cartr 
Cartr 
Cartn 
Cartn 
Cartn 
Cartn 
Cartn 
Cartn 
Cartn 



dge 35.00 
dge 35.00 
dge 35.00 
dge 35.00 
dge 35.00 
dge 35.00 
dge 35.00 
dge 35.00 
dge 35.00 
dge 35.00 



■'Trademork ot 'Trodemark of 

Humon Engineered Professionol Software 
Software 



•Tfademork of 
tnfo Designs Software 



fYes, Please send me: 



QTY 



MODEL* 



r^ME 



TOTAL (In Texos, odd 5% soles tox] 



PRICE 



Your Name. 

Address 

City 



Zl 



.State. 



.Zip. 



payment mettiod: Ctieck ; 

Master Card # 

Visa # 



Card-Exp, Date. 



American Express # . 
Signature 



J 



Southwest Micro Systems Inc.* 2554 Southwell -Dallas, Texas 75229*(214] 484-7836 



between interrupts, the number of microseconds 
would be (65535 + 2)/]. 022 = 64126. The fast end 
limit is set by the percent of time remaining for 
BASIC. This percent is derived by (L-IR);(L + 2), 
where L is the number POKEd in the timer latch 
described above, and IR is the number of cycles 
taken up by the unmodified interrupt service 
routine. 

There are approximately 220 cycles in the 
unmodified interrupt service routine; thus, if the 
number POKEd into the timer approaches 220, 
there will be no time available for anything other 
than attending to the interrupt service routine. 

Here's how to add your own machine lan- 
guage routine to the jiffy clock service routine. 
Normally, when the decrementing counter hits 
zero, the operation is transferred to the interrupt 
service routine whose beginning address (SEABF) 
is stored in 788 and 789 ($0314 and $0315). By 
changing the address in 788 and 789, you can tell 
VIC to do additional instructions in machine lan- 
guage and then go to SEABF to run the normal 
service routine. 

To change the address in 788 and 789, you 
must disable the interrupt enable register for the 
jiffy clock to allow the number in these locations 
to be changed. POKEing location 37166 with 128 
wdll disable the interrupt; after the addresses in 
788 and 789 have been changed, POKEing location 
37166 with 192 will enable the interrupts again. 
Here's a sample program: 

10 POKE52,28:POKE56,28:REM SETTING UPPER ~ 

BOUNDARY FOR BASIC 
15 FOR Z=0 TO 9:READ Q: POKEC 28*256+2} , Q:N 

EXT 2: REM MACHINE PROGRAM IN PAGE 
28 

20 POKE3 7166,128:POKE788,0:POKE789,28:POK 

£37166,192 

21 REM LINE 20 CAUSES THE INTERRUPT TO NO 

W GO TO PAGE 28 
25 DATA 173,16,145,157,0,29,232,76,191,23 
4 

30 INPUT"LOW":Nl: INPUT"HIGH" r N2 :POKE371S8 

,N1:P0KE37159,N2 

31 REM LINE 30 CHANGES THE TIMING OF THE ~ 

INTERRUPT 

The machine language program in line 25 disas- 
sembles to: 

ICOO LDA S9110; Get data from user port 

1C03 STA $1D00,X; Store data in page 29 ring buffer 
1C06 LNX; Increment pointer for ring buffer 

1C07 JMP SEABF; Jump to normal jiffy service 
routine 

This program can be used as a guide for set- 
ting up the jiffy clock for timed data acquisition. 
One additional consideration in terms of the per- 
cent of time left for BASIC: the above program 
has added an additional fourteen cycles which 
must be added to the IR variable. Exercise caution 
if data is to be gathered at faster than half- 
millisecond intervals. C 

248 COMPUTi! Ma¥l9B3 



* 



POWERBYTE SOFTWAREtm 

Pr6SGnts 

APPLICATION SOFTWARE 
Business and Home 

for the 

•Commodore 64 
•Vic 20 and IRS 80 CC 

65 Applications Available including: 



} 



THE EDITOR - Advanced Word Procesior 

with Powerful Editing Features (64 &. 8K Vic 20) 

THE ACCOUNTANT- General Ledger, Income 

Statement &. Balance Sheet 

ACCOUNTS RECEIVABLE/PAYABLE- Create 

Journal for Current Accounts & Record of Paid Accts. 



BUSINESS INVENTORY S19.95 

ORDER TRACKER S19.95 

MY PROFIT MARGIN S16.95 

BILLING SOLVER Si 9.95 

CASH FLOW MODEL S 1 6 . 9 5 

THE CLIENT TICKLER Si 9.95 

INCOME & EXPENSER Si 5.95 

BUSINESS Si 6.95 
APPOINTMENTS 



AT HOME INVENTORY 
CHECKBOOK BOOKY 
THE STOCK TICKER 
TAPE 

UTILITY BILL SAVER 
THE BAR CHART 
MOTHER'S RECIPES 
THE MAILMAN 
GRADE MY KIDS 



S34.9S 

$29.95 
S21.95 

$12.95 
$12.95 

$16.95 

$12.95 
$8.95 
$12.95 
$12.95 
$15.95 



AND MANY, MANY MORE!! 



FOR CASSETTE OR DISC (SIO.OO Extra - 64 & Vic 20) 

•FREE CATALOG 

WITH INTRODUCTORY SPECfALS 

POWERBYTE SOFTWARE 



* 

* 
* 

* 
* 

* 

* 



2CHIPLEY RUN 

WEST BERLIN, NJ 08091 

(609) 346-3063 



^#JMM»-»-*-»*#* 4 




ARCADE GAMES! 



NEW FOR THE ^A 

fs commodore OHt 



COLLISIONS 




Avoid the walls, the purple 
dots, and the lines as you 
maneuver to make your 
opponent crash before lime 
runs out. 9 levels of 
difficulty. Bonus lime for 
high scores. 1 or 2 players. 
Joysticks required. 

ATYOUR DEALER NOW! 



IPJ^ 




© 



HAVE A 
NICE DAY! 

Move your base and lire 
your missiles to blast Happy 
Faces from the sky! Full 
sprite graphics! 1 or 2 
players. Keyboard, joystick, 
or paddle controlS- 

AVAILABLESOON! 



All games compited irom UASIC for speed. Ask for 
COLLISION! at your dviilor. or sendS12.95 for each prof^ram 
on csisselte tape. SL'i.95 on disk, plus SI. 50 shipping. 




Dealer rnQLiinesinwiled. 



Ph. 319-754-5291 



'CommodorD H it « indttmark of Commodore Bu»ines» Machinns Inc 



Topo|pgic ( 

P.O. Bon 752 
Burlington. Iowa 52601 




Optimizing PET Speed 



Michael W. Schaffer 



Careful numbering of program lines in Commodore 

Upgrade and 4.0 BASIC can improve the execution 
speed ofGOTOs and GOSUBs. This technique is not 
applicable to the VIC-20, but the VIC is quite fast with- 
out it. 



You can improve the efficiency of certain GOTOs 
and GOSUBs in your programs. The technique, 
though simple, is apparent only if you look at a 
disassembly of the BASIC ROM {it's at hex B830 
in 4.0 ROMs). 

The major overhead in the execution of 
GOTOs and GOSUBs is the time taken by BASIC 
to find the line number you are going to (the target 
line number). To start the search, BASIC first com- 
pares the high-order byte of the target line number 
to the high-order byte of the current line number. 
If the target high byte is larger, then BASIC starts 
to search at the next line of the program. Other- 
wise, BASIC starts the search at the beginning of 
the program. 

Notice that BASIC only compares the high 
byte of the line numbers: small jumps forward 
may still be searched for from the beginning of 
the program. By carefully numbering the lines of 
your program, you can avoid this waste of time. 
The rule for this is simple: 

Minimum target line number = 256*{INT(current 
linc#/256)4-l) 

In a test program of 100 lines followed by a 
forward GOSUB, the speed of 100 executions of 
the GOSUB was improved by a factor of three by 
numbering the GOSUB as shown above. The 
amount of time saved is directly dependent on 
the length of your program and the position of 
the GOTO or GOSUB in the program, but can be 
significant, especially in user-interactive routines. 

Program 1: 

Non-optimized GOSUB And Sample Run 

100 REM NOTICE THAT THE HIGH BYTES ARE EQ 

UAL 
250 T0=TI:FOR 1=1 TO 100:GOSUB 255:NEXT:PR 

INT"NON-OPTIMIZED"; (TI-T0) : END 
255 RETURN 

NON-OPTIMIZED 63 



Program 2: 

Optimized GOSUB And Sample Run 

100 REM NOTICE THAT THE HIGH BYTES ARE NO 

T EQUAL 
250 T0=TI:FOR 1=1 TO 100:GOSUB 255;NEXT:PR 

INT"0PTIMI2ED"; (TI-T0) : END 
2 56 RETURN 

OPTIMIZED 19 © 



COMPUTE! 

The Resource. 




inDes(oi 



Quit Playing Games . . . 

Disk Based Software lo Make Your 
Computer Get Down to Business 

Disk Data Manager— Create and manage your own data 

base. Allows you to create, add, change, delete, search, 

sort, print, etc. Up to 1200 records on a single disk. 

VIC 20. . . 59.95 CBM 64 . . .79.95 

Payroll System— Full featured, complete payroll sys- 
tem. Even prints criecks. 

VIC 20. . . 89.95 CBM 64 . . . 99.95 

Mailing List— UP to 1200 records on a single disk. 
Presorts by Zip Code. Prints on stock up to four 
labels wide. 

VIC 20. . . 44.95 CBM 64 . . .54.95 

Inventory Package— Maintains quantify on hand, cost, 
sales price, reorder point, etc. Generates suggested 
reorder, sales report, and sales analysis. 

VIC 20. . . 79.95 CBM 64 . . . 99.95 

General Ledger— Up to 7 5 accounts! Generates Balance 
Sheet, Income Statement, Update Report, etc. 
VIC 20, . . 89.95 CBM 64 . . . 99.95 

Checkbook Manager— up to 25 expense categories. 

Tracks all outstanding checks until they are paid. 

VIC 20. . . 49.95 CBM 64 . . .49.95 

CONTACT US FOR ALL YOUR 
DISK BASED SOFTWARE NEEDS 

Call for specifics on Hardware Configurations. 

Send Self. Addressed Stamped Envelope for 

Catalogue of Games and other Applications 

DEALER INQUIRIES WELCOME 



2905 Ports O'Call Court 
Piano, Texas 75075 

{214) 867-1333 

VISA and MASTERCARD Accepted 



Mav1Q63 COMPimi 249 



Tl BASIC One-Liners 



Michoel A Covington 



The Tl BASIC DEF statement can become a powerful 
tool in your programmer's bag of tricks. Here's how to 
use it. 



If you've been programming in BASIC for any 
time at all, you've surely come across, and used, 
some of the built-in functions that the language 
provides, such as INT, SIN, COS, TAN, ATN, 
and LOG. But did you know that you can use the 
DEF statement to create functions of your own? 
Defining your own functions lets you type a com- 
plicated formula only once, and it allows you to 
build complex functions out of simple ones in a 
most efficient way. 

Suppose, for instance, that your LOG func- 
tion gives you natural (base c) logarithms, and 
you want base 10 logarithms. (If you're not sure 
which you've got, type PRINT LbG(lO) - if the 
answer is 1, you're in base 10, and if it's about 
2.3026, you're in base c.) You can convert base 
e logarithms to base 10 by dividing them by 
2.302585093, so one of the options open to you is 
obviously to write LOG(X)/2. 302585093 (or what- 
ever) every time you need a base 10 log. But there's 
an easier way. 

Creating Functions 

To create your own function - let's call it LOGIO, 
though some computers may insist that you name 
it something like FNL - just include, early in your 
program, a statement like this: 

10 DEF LOGIO (X) = LOG(X)/2.302585093 

From then on, you'll be able to use the new 
function LOGIO to get base 10 logarithms. Try it 
out with a program something like this: 

10 DEF LDSIO (X ) =LDS ( X) /2. 3025S5O93 

20 FOR 1=1 TO lO STEP 0.1 

30 PRINT I,L0610(I) 

40 NEXT I 

and compare the results against a table of 
logarithms. 

The DEF statement is different from most 
BASIC statements in that it can't refer to variables. 
(The X in it - it could be any variable name - is 
used only as a placeholder for the number within 
the parentheses; it is completely separate from 
any variable named X that you may use elsewhere 
in the program.) You can refer only to numbers or 

250 COMPUIt! MavW83 



other functions. Some computers require that the 
name of the function be three letters and that the 
first two be FN - FNA, FNB, FNL, and so forth - 
although the TI-99, and many other microcom- 
puters, allow you to name functions with the same 
type of names you use for variables. 

Sample One Liners 

So that's how it's done. Now let's look at some 
practical examples. 

1. Base 10 logarithms. That's what we've just 
discussed. For reference, here is the statement: 

DEF LOGIO(X) = LOG(X)/2.302S85093 

(assuming your machine's LOG function gives 
you base e logs). 

2. Base 2 logarith)ns. On a machine on which 
the LOG function gives base c logarithms, you 
can get base 2 logarithms by using: 

DEF LOG2 (X) = LOG(X)/0. 6931471806 

If your machine's LOG function gives base 10 
logarithms, you'll need to use DEF 
LOG2(X) = LOG(X)/0.3010299957 instead. 

3. Degrees to radians. If X is the measure of an 
angle in degrees, then RAD(X) will be the same 
angle measured in radians, if you define the fol- 
lowing function: 

DEF RAD(X) = X/57.29577951 

4. Radians to degrees. The opposite function, 
converting X in radians to DEG(X) in degrees, is: 

DEF DEG(X) = X*57.29577951 

5. Arcsine (in radians). The following defini- 
tion will give you the arcsine function (which is 
not usually provided in implementations of 
BASIC, although the arctangent is). 

DEF ASN(X) = 2* ATN(X/(1 + SQR(1-X"2))) 

If you look through a table of trigonometric iden- 
tities, you may find an apparently ecquivalent, but 
simpler, formula that would lead to the statement 
DEF ASN(X) = ATN(X/SQR(1-X"2)). But note that 
this version won't do ASN(l) correctly (it will 
try to divide by zero). Hence the first version is 
preferable. 

6. Arccosiuc (in radians). If you have the 
arcsine function, you can get the arccosine, as 
follows: 



DEFACS(X) = 1. 570796327- ASN(X) 

Remember that the DEF statement for ASN must 
precede the DEF statement for ACS (you can't 
refer to a function until you've defined it). 

7. Rounding to a partictilnr number of decimal 
places. Where // stands for the number of decimal 
places you want, use the definition: 

DEF ROU(X) = INT(((10"n)»X) + 0.5)/(10'n) 

Note that vou must substitute a number for n; in 
most implementations, )i cannot be a variable. 
Fience, for example, if you want rounding to three 
decimal places, your statement will read DEF 
ROU(X) = INT(((10'3)*X) + 0.5)/(10'3). The 
number of decimal places can be negative, of 
course; if you want to round to the nearest 10, ask 
for-1 decimal place, and if you want to round to 
the nearest 1000, ask for -3 decimal places. 

8. Rounding to a particular uuitdvr of significant 
digits. Often, you'll find that the most convenient 
type of rounding involves coming up with a par- 
ticular number of significant digits rather than a 
particular number of decimal places. You can 
accomplish this with the definition 

DEF RSFl(X) = (N-l)-INT(LOGlO(X)) 

DEF RSF(X) = INT((ao"RSFl(X))*X) + 0.5)/{1o"rSF1 (X)) 

Here the definition is so complex that it is best 
done in two stages: first we define RSFl, which is 
a function used internally in RSF, and then we 
define RSF, which is the function we actually use. 
ti stands for the number of significant digits you 
want; as before, you must substitute a number for 
it when typing the definition into the computer. 
A word of warning: RSF (with its subsidiary 
calls to RSFl, which in turn calls LOGIO) can take 
quite a bit of time to execute (about half a second 
of realtime on the TI-99). 

9. Sexagesima! output: minutes. Our practice of 
expressing time in hours, minutes, and seconds, 
and angles in degrees, minutes, and seconds, is a 
remnant of an ancient Babylonian base-60 
(sexagesimal) number system. Often, in a com- 
puter program dealing with time or with angles, 
it is desirable to express the output in terms of 
units, minutes, and seconds. The units are ob- 
tained by taking INT(X); thus the units part of 2.5 
hours = INT(2.5) = 2 hours. Here is a function 
that gives the minutes part: 

DEF MNT(X) = INT(60»(X-INT(X))) 

That is, we take the non-integer part of the value, 
multiply it by 60, and take the INT of that. 

10. Sexngesimnl output: seconds. The seconds 
part of the value, in turn, is given by: 

DEF SCD(X) = 60*(60*(X-INT(X))-MNT(X)) 
That is, we subtract the integer part and the 
minutes; what's left gets multiplied by 60 twice. 

The sexagesimal output functions can be tested 



by means of a program such as the following: 

10 DEF MNT (X) =INT (60t < X-INT (X) ) ) 

20 DEF SCD (X ) =60* (60* < X-INT (X) ) -MNT ( 

X ) ) 

30 FDR H=0 TO 2 STEP O.Ol 

40 PRINT 

50 PRINT H, "HOURS" 

60 PRINT INT (H) , MNT <H) , SCD (H> 

7 NEXT H 

From this we learn, for example, that 0.01 of an 
hour is 36 seconds, and that 0.5 of an hour is 30 
minutes. (If your computer uses binary, rather 
than BCD or Radix-100, internal representations 
of numbers, you may get odd errors due to round- 
ing or lack of it. The solution would be to round 
the number of hours to some reasonably small 
number of decimal places before invoking the 
conversions, and perhaps to insert some rounding 
in the definitions of MNT and SCD themselves.) 

Incidentally, for sexagesimal input, you don't 
need any special functions, only a bit of multipli- 
cation. For instance, the statements 

10 PRINT "TYPE HOURS, MINUTES. SECON 

DS" 
20 INPUT H,M,S 
30 H=H+M/60+S/3&00 

will give you (as H) the number of hours expressed 
as a decimal. 

11. Modulo 12 arithmetic. In dealing with hours, 
you'll often want to reduce numbers to modulo 
12. For instance, if it's 11 a.m., then vou can cal- 
culate the time four hours later by adding 11-1-4 
(which gives you 15) and then taking the result 
modulo 12. The function definition is: 

DEF MOD12(X) = 12*(X/12-INT(X/12)) 

(unless, of course, your computer has a built-in 
MOD function, which is even simpler to use). 
This particular function is likely to be bothered by 
rounding and truncation errors. On the Tl-99, 1 
get accurate results for numbers under 1000 or so, 
but larger numbers give slightly erroneous an- 
swers; a binary machine might be plagued by 
worse problems. 

12. Modulo 60 arithmetic. The same function, 
giving modulo 60 answers (for dealing with 
minutes and seconds), is: 

DEF MOD60(X>=60*(X/60 - INT(X/60)) 

(as if you couldn't have guessed). The following 
program starts with a time expressed as H hours 
M minutes, and adds Ml minutes: 

10 DEF M0D12 ( X > =12» ( X/ 12-INT ( X/ 12) > 

20 DEF M0D60 ( X ) =60« (X/60 -INT < X/60) ) 

30 INPUT H.M 

40 INPUT Ml 

50 M=MOD60 EM+Ml ) 

60 H=H+INT (Ml /60) 

70 PRINT H,M 

Line 50 adds the right number to the minutes 
part, and line 60 adds to the hours part if 
necessary. @ 



Mav 19B3 COMPUTE! 251 



Guest Commentary 



Is RAM Memory A 
Status Symbol? 



Barry Miles 



Many expensive technological items are bought 
as status symbols. Are all those Hewlett Packard 
HP 41c's really used to their fullest extent, for 
long programs and the use of ROM libraries of 
fancy programs, or are they merely left on the 
executive's desk to say "I'm so important that I 
can justify a purchase of the state-of-the-art pro- 
grammable calculator"? 

The advent of really large RAM sizes means 
that we should rethink the relationship between 
RAM and disk storage. We have for a long time 
lived with the idea that we should use RAM spar- 
ingly. This probably stems from the need to con- 
serve RAM usage in a mainframe environment, 
so that as many users as possible may access the 
machine at once and so that the queuing problem 
is reduced to a minimum. Programmers are likely 
to continue to think in this way, even when the 
need has evaporatecT 

Perhaps an example should be taken from 
the approach used in managerial economics. In 
budgeting for the future, businessmen seek to 
identify the Principal Budget Factor - that factor 
which prevents the business from expanding to 
infinity. They then seek to make the very best use 
of that scarce resource, so as to maximize profits. 
Thev usually make strenuous efforts to reniove 
the bottleneck which that resource represents, by 
increasing the amount of it which is available: if 
you are short of skilled labor, you seek to take on 
more people, for instance. The successful 
businessmen are the ones who first remove the 
constraint which is holding them back, then cor- 
rectly identify the new constraint and seek to re- 
move it, and so on. 

What I am saying is that once RAM ceases to 
be a scarce resource, we should cease trying to 
economize in its use, especially as it becomes 
progressively cheaper, and particularly when it 
becomes cheaper than similar amounts of secondary 
storage (such as disks or tapes). 

A potential buyer of the Sirius computer has 
an interesting choice before him; with a limited 

252 COMPUH! May 1983 



budget, he will need to decide between various 
amounts of RAM, and whether to go for double- 
sided disks to increase secondary storage capacity. 
He may choose the largest amount of RAM, out 
of habit, without really considering whether he 
will make effective use of the extra memory. 

More Is Less 

Again, economics may come to our aid. The Di- 
minishing Marginal Utility theory says in this 
context that every extra IK of RAM is less impor- 
tant to us than the previous one, to the point where 
more is really of no interest. 

Surely we must examine whether what we 
are doing now will become easier, faster, or more 
efficient if we have more RAM, and whether there 
are other things which we could do with more 
RAM but which are impossible at present, and 
finally whether we should adopt a whole new 
approach. There is a danger of misleading our- 
selves or of being misled by salesmen into thinking 
that more RAM must be a good idea, without 
thinking out why. There is even a danger of 
rationalizing in order to justify what is really only 
wish-fulfillment. 

We might compare this to buying a fast car. 
Some sav that you're much safer in a fast car than 
in a slower car, regardless of the speed at which 
you are traveling. The braking system and sus- 
pension of such a car have been designed to cope 
with the effects of traveling quickly, and these 
systems therefore work very much within their 
capacity, and very efficiently at slower speeds. A 
similar argument can be made for extremely pow- 
erful hi-fi systems: distortion is less if you do not 
have to turn up the volume very far to get the 
loudness you require. 

Do these arguments carry over to microcom- 
puter memories? Probably not. The trouble is that 
you merely get more of the same. If you do not 
use it, then it just lies idle. Are you really going to 
write massive BASIC or machine code programs? 
Are you really going to handle vast amounts of 




fRDERING BLANK 

o: American Peripherals 
122 Bangor Street 
Lindenhurst, N.Y. 11757 



hip to: Name 
Street- 



Town, State, Zip. 



ITEM 



DESCRIPTION 



NY Slate Residents only add 7'/,% tax 



Stnlpping (If COD, add $1-50) 



— I 1 I Check here for latest 64 Catalog 

I Check here for latest VIC Catalog 



TOTAL AMOUNT 



PRICE 



$1.50 



U.S. Funds - Forlegn Countries add an additional $3.00 



data? Most likely not, at least not unless you 
change your way of doing things to optimize the 
use of your principal technological factor. 

New Freedoms 

What I am suggesting is that disks came about 
because of limited RAM. Now that RAM limita- 
tions can be of increasing greater size, we should 
explore new freedoms. What follows may seem a 
little far-fetched, but may also be just around the 
corner. 

First, we may take it that a one megabyte 
RAM is not likely to be filled with a BASIC or 
machine code program of anything near that 
length. The debugging alone would take too long! 
This leaves us with other possibilities. 

We could fill a lot of the RAM with a wide 
range of programs, and call up any of the whole 
suite, instantaneously, from a special menu 
program. 

We could have as many programming aids in 
our machine as we could conceivably wish for, 
and barely scratch the surface of our new-found 
capacity. 

We could have a vast range of help screens 
available for instantaneous recall when in trouble. 

We could call in a whole succession of high 
resolution pictures, which are usually slow to 
load from disk, so rapidly that even animation 
would be possible. 

We could have split processing in one 
machine. After all, it is common for two processors 
to be in one machine, so why not a schizoid 
machine with each part operating independently? 

We could have a really enormous amount of 
text in our word processor at any one time, and 
have many different text areas. Our word proces- 
sor could perhaps interact with our accounting 
and data base programs in RAM, 

Accounting suites of programs could be truly 
integrated, so that final accounts are updated 
after every transaction. 

Our data bases could be loaded from disk 
into RAM first thing in the morning, and all up- 
dating could take place in RAM, so as to be almost 
instantaneous. All the disk activity would have to 
do is merely dump RAM contents, for safety's 
sake, at convenient time intervals. Battery backup 
could protect contents from voltage spikes and 
power failures. 

It might be that disks of all types will become 
a thing of the past, with programs and data being 
loaded and dumped over the telephone by a 
modem, with suitable passwords and protections, 
into your friendly local overnight datastore. (There 
are problems in this, in that the use of telephone 
lines is subject to error, but presumably this will 
improve and is not an insurmountable obstacle.) 

In any case, if the function of the disk unit 

254 COMPUre! May 1983 



changes from continual random access to in- 
frequent loading and dumping, disk operating 
systems could be simplified at the very least. 
Perhaps the very small diameter disks which the 
major companies are now developing will become 
the norm; and disk units will come down in price 
to become a trivial expense. That, too, is an 
intriguing prospect. 

This would all require greater addressability 
than even the current 16 bit machines offer, but 
the megabyte chip is probably just around the 
corner. © 



Use the card in 
the bock of this 

magazine to order 
your 

COMPUTE! Books 




• DOODLE*" for the COMMODORE-64 

Draw pictures with your COMMODORE-64' and WiCO' Trackball 

• DOODLE*"' /e(s you: 

DRAW pictures on the screen 

PAINT wilt) 8 sizes ol brush 

draw straigt^l LINES and BOXES 

ERASE with 8 sizes ol erasers 

DUPLICATE ENLARGE and REDUCE parts ol the "doodle" 

• DOODLE*" /las. 

on-line MENUS tor easy learning and reference 
mar^y MODES and graphics COMI\^ANDS 

• DOODLE*' can. 

SAVE and LOAD from disk or tape 

PRINT on many popular printers 

PHOTO NEGATIVE and MIRROR IMAGE your 'doodles'' 

GRID the screen to aid drawing 

• DO0DLE*~ ;s. 

tOO% MACHINE LANGUAGE lor instant comn^and response 

... and MUCH MORE ' ...$S9.9S< 

specitiy printer make and model, interlace method, and disk or tape to: 

OIUINI Unlimited 

105 S. Los Robies Pasadena, CA 911 01 

(21 3) 795-6664 



Disassemble To 
Printer Or Disic For Atari 



Mark Chasin 



If you've been loondering how to take disasseiiiblies of 
machine hi)i<^tiage and either store them o>i a disk or 
print them out - here's your answer. These programs 
will make the Atari Assembler/Editor cartridge an even 
more useful programming tool. 



One of the best ways to learn assembly language 
programming is to look at the ways professional 
programmers have written complex programs 
and to study and learn their techniques. Unfortu- 
nately, when we buy programs that were origi- 
nally written in assembly language, thev have 
already been assembled (translated) into machine 
language. To make sense out of this code, we 
must be able to disassemble (retranslate) it back 
into assembly language. 

Fortunately, those of us who have the Atari 
Assembler/Editor cartridge know that Atari has 
the built-in ability to disassemble machine lan- 
guage back into assembly language, using the L 
option in the DEBUG mode. This option will con- 
vert the information stored in any section of men^- 
ory into assembly language. This conversion is 
then displayed on your screen, so that you can 
look at any part of any machine language program 
in assembly language. 

That's the good news. The bad news is: 1) 
you can look at only about 20 lines of assembly 
language code at a time, and 2) you have no way 
of storing the assembly language version for 
studying later, except to copy the program from 
the screen with pencil and paper. This article 
shows you how to divert the output either to a 
printer or to your disk and provides programs to 
implement these options. 

Output To A Printer 

In your Atari, the Input/Output Control Block 
(idCB) #0 is the default lOCB for all output oper- 
ations, and it is the screen editor. The output from 
the Assembler/Editor cartridge (and all other car- 
tridges) is routed through this lOCB to direct the 
output to the screen. In your Atari, all output to 
any device is handled through the handler table, 
which is simply a series of pointers to places in 
the Operating System (OS), where the directions 
for how the Atari is to deal with each device can 
be found. Actually, these pointers are directed at 
address-1 for each set of directions. Therefore, to 



redirect the output of the Assembler/Editor car- 
tridge to a printer, all we have to do is to change 
the pointer so that it points at the address-1 of the 
printer instructions in the OS. 

Let's try to disassemble the first part of DOS 
and get a printout of the assembly language code. 
I'll assume that you have your system booted up 
with DOS 2, that the Assembler/Editor cartridge 
is in place in your computer, and that your printer 
(and interface module, if you need it) is on. First, 
go into DEBUG mode by typing BUG, followed 
by a RETURN. Your screen should say DEBUG. 
Next, type C346<A6,EE and another RETURN. 
This changes memory locations $0346 and $0347 
to $A6 and SEE, respectively. Bv the way, the 
directions for dealing with a printer begin in mem- 
ory location $EEA7. Remember, we point to ad- 
dress-1. 

All output is now directed to vour printer. If 
at this point you type L0700,0756 and hit RETURN, 
your printer should produce the first part of DOS 
2 in assembly language, exactly as it appears in 
Program 1. The format of this listing is discussed 
in detail below. 

Remember: All output is now directed to 
your printer. To get back to the screen, you'll have 
to change the pointer back to where it was. You'll 
need to type C346< A3,F6 and hit RETURN. Now 
you can see what you're doing, so you can go 
ahead with normal output. 

To A Disk File 

Directing the disassembled listing of some portion 
of memory to your disk drive is a bit more com- 
plicated and requires a brief program to handle 
housekeeping. This assembly language program 
is shown in Program 2, with the origin at $0600. 
Before we can direct the output to disk, we need 
to open a file on the disk. For the purposes of this 
discussion, we will open a file using lOCB #3, 
and we'll call the file DliDISASSEM. 

To do this, we first load the X register with 
#$30 (for lOCB #3), in line 110 of Program 2. We'll 
use this as an index into lOCB #3 throughout the 
program. Next, we store the command byte for 
the OPEN command, $03, into $0342,X in lines 
120-130, and the command byte for the OPEN for 
WRITE command, $08, into$034A,X. Then we 
point to the name of the file we want to OPEN by 
storing the low and high bytes of the address of 



May 1983 COMPUTEI 265 



this string in $0344,X and $0345,X respectively, in 
lines 160-190. We can then OPEN the file by jump- 
ing to the CIO subroutine in line 200. The RTS in 
the next line returns control to your keyboard, so 
that you can handle the next steps manually. 

The program that actually directs the output 
to this disk file begins on line 230 of Program 2, at 
$0620. We set the lOCB to #3 in line 230, and 
temporarily store the character being sent in the Y 
register in line 240. By setting the buffer size to 
zero in lines 250-270, we can pass one character at 
a time, from the accumulator, directly to the disk 
file. The command byte for PUT CHARACTER is 
SOB {lines 280-290). In line 300, we retrieve the 
character being sent, and we send it to the disk 
by calling the CIO routine in line 310. Line 320 
returns control to the Assembler/Editor cartridge 
to fetch the next byte of the disassembly. As each 
character is passed to the disk in turn, the OS 
takes care of keeping track of how the disk file is 
to be organized and saves us a lot of work in the 
process. 

It is impoiiaul, once a file is OPENed for writ- 
ing, that it be closed, or you are likely to lose the 
last sections of information you wanted to write 
to the disk. Since your keyboard is not in control 
during the disassembly, you need to close the file 
by hitting BREAK when the drive has stopped, 
indicating that the hie has been written. 

To use these programs, type them in exactly 
as shown in Program 2, and LIST them to your 
disk for safekeeping. Then type ASM and RE- 
TURN to assemble these programs. After this is 
completed, type BUG to enter DEBUG mode, and 
then G0600 to run the first program. You should 
hear the disk drive start as the file is OPENed. 
NexL type C346 < IF, 06 and RETURN. This directs 
the output to our routine to send one character at 
a time to the disk {remember: address-1). Then 
type L0700,0756 and RETURN. This will disas- 
semble the first part of DOS 2 to your disk. When 
the drive stops, hit the BREAK key to close the 
file. SYSTEM RESET will now set everything back 
the way it was before we started our tampering. 

Reformatting The Output File 

One last problem remains. If we refer to Program 
1, we can see that the first set of numbers on each 
line represents the hexadecimal address of each 
instruction. The second set of numbers is the 
machine language nomenclature for the instruc- 
tion, and the instruction mnemonic itself is the 
next set. Following the instruction is the operand. 
In a typical assembly language listing, two more 
fields would be present. Between the machine 
language instrucHon and the mnemonic would be 
a line number, and frequently following the 
operand is a comments field. The problem that 
remains is that the output from the L option of 



the Assembler/Editor cartridge is not in a form 
that can be used as input for the Assembler itself. 
That is, the disk file DLDISASSEM that we have 
created cannot be used as source code - yet. 

Program 3 is a BASIC program which will 
reorganize and reformat DLDISASSEM into 
another file, DLOUTPUT, which can be used as 
source code for the cartridge. Line 100 sets the 
first line number for the OUTPUT file to 1000, 
and lines 110-160 dimension the input, output, 
and blank strings, set the blank string equal to all 
blanks, and erase anything in the other two 
strings. Lines 170 and 180 open DISASSEM for 
input, and OUTPUT for output. 

We are going to set up a loop, from lines 230- 
330, which will work its way through all of DIS- 
ASSEM; so, in line 190, we set a trap to close the 
files when we get to the end. Lines 200 and 210 
discard the first two lines of DISASSEM, a blank 
line and the word DEBUG on the second line (see 
Program 1), which are put in by the cartridge. 
Line 220 blanks out the input string, and line 240 
reads the first line of DISASSEM into the input 
string, INTAKES. 

We would like our output to start with a line 
number, so line 240 handles this for us. Line 250 
leaves the next two spaces blank, because that's 
how the Assembler/Editor expects to get its source 
code. Line 260 checks to see if the cartridge un- 
derstood that particular byte. If it can't interpret a 
byte, the cartridge puts ??? into the mnemonic 
field. This program stores the contents of that 
location in memory as a .BYTE mnemonic. Line 
270 hlls in the remainder of the line, and line 280 
puts in a comments field, with the contents as the 
memory location of that particular instruction, as 
an aid in understanding the output. Line 290 puts 
the output to the disk file, lines 300 and 310 rezero 
OUTS and INTAKES, line 320 increments the line 
number by two, and line 330 loops back to get the 
next line for reformatting. Line 340 closes the files 
and ends the program. 

Program 4, the OUTPUT file structure for the 
first part of DOS 2, requires a few comments. The 
beginning of DOS is used to store certain variables. 
For that reason, the first part of the output file 
(lines 1000 - 1030) looks slightly strange. However, 
it should be noted that all information is there, 
and in a form which is understandable to the As- 
sembler. That is, this file can be used as source 
code. Some thought must be given, however, to 
the interpretation of this code, as with all disas- 
sembled machine language programs. 

Two final comments: First, if you want to 
disassemble all of DOS 2, do it in two steps; al- 
though the programs described in this article can 
handle all of DOS, the Assembler/Editor cartridge 
cannot accept an input file that large. The source 
code for DOS 2 using these programs is more 



256 COMPim! Moyl^BS 



than 300 sectors long! Second, all references to 
addresses in the OUTI'UT file are absolute. There- 
fore, you will not be able to relocate this program 
with a different origin unless you substitute labels 
for all of the absolute addresses. However, vou 
will be able to experiment with changes to DOS, 
or any other machine language program, if you're 
careful about the specific addresses in your disas- 
sembled source code. 

If you are specifically interested in modifying 
or experimenting with DOS 2, 1 highly recommend 
the recent book bv Bill Wilkinson, Inside Atari 
DOS, published by COMPUTE! Books. The 
documented source code and detailed explana- 
tions of the various subroutines within DOS make 
this an invaluable resource for anyone attempting 
to cliange or understand DOS. There are also 
some very interesting suggestions for modifica- 
tions to DOS, which should be reasonably simple 
to implement now that you have a way to obtain 
the source code. 

Program 1: Disassembly Of DOS 



DEBUG 








0700 


OO 






0701 


03 






0702 


OO 






0703 


07 






0704 


40 






0705 


15 


4C 




0707 


14 






070S 


07 






0709 


03 






070A 


03 






070B 


00 






070C 


7C 






070D 


1ft 






070E 


Ol 


OF 




0710 


OO 






071 1 


7D 


CB 


7 


0714 


AC 


OE 


07 


0717 


FO 


36 




07 19 


AD 


12 


07 


071C 


85 


43 




071E 


8D 


4 


03 


0721 


AD 


13 


07 


0724 


85 


44 




0726 


SD 


05 


03 


0729 


AD 


10 


07 


072C 


AC 


OF 


07 


072F 


18 






7 30 


AE 


OE 


07 


0733 


20 


6C 


07 


0736 


30 


17 




0738 


AC 


1 1 


07 


073B 


Bl 


43 




073D 


29 


03 




073F 


48 






074 


CS 






0741 


1 1 


43 




0743 


FO 


OE 




0745 


Bl 


43 




0747 


AS 






0748 


20 


57 


07 


074B 


68 






074C 


4C 


2F 


07 


074F 


A9 


CO 




0751 


DO 


01 





BRK 




r^rtrt 




brh; 




??? 




RTI 




ORA 


*4C, X 


'?'?'? 




77? 




??? 




??7 




BRK 




7-? -7 




'7'?'? 




ORA 


(*OF, X) 


BRK 




ADC 


«07CB, X 


LDY 


*070E 


BEQ 


4074F 


LDA 


40712 


STA 


*43 


STA 


*O304 


LDA 


*07 13 


STA 


*44 


STA 


*0305 


LDA 


S0710 


LDY 


S070F 


CLC 




LDX 


t070E 


JSR 


*076C 


EMI 


*074F 


LDY 


*07 1 1 


LDA 


(*43) , Y 


AND 


#*03 


PHA 




INY 




ORA 


(*43) , Y 


BEQ 


«0753 


LDA 


(«43> , Y 


TAY 




JSR 


*0757 


PLA 




JMP 


*072F 


LDA 


#«C0 


8N€ 


*0754 



0753 
0754 
0755 
0756 
DEBUG 



68 
OA 
A8 
60 



PLA 
ASL 

TAY 
RTS 



Program 2: Disassembly To A Di5l< File 



1 00 
0110 
0120 

0130 
0140 

01 50 
160 
0170 

oiao 

0190 
0200 
0210 
0220 
0230 
2 4 
0250 
2 60 
0270 
0280 
0290 
0300 
0310 
0320 
0330 

Prog 



«= *0600 
OPEN LDX #*30 
#*03 
*0342, X 
#4 08 
S034A, X 
«FNAMES<255 
*0344 , X 
«FNAME/256 
40345, X 
4E456 



LDA 
STA 
LDA 
STA 
LDA 
STA 
LDA 
STA 

asR 

RTS 

»= 4O620 
POINT LDX 
TAY 



#430 



LDA 
STA 
STA 
LDA 
STA 
TYA 
JSR 
RTS 
FNAME .BYTE " D 1 ; D I SASSEM " , O 

ram 3: basic Reformat Of File 



#o 

40348, 
40349, 
#*0B 
40342, 

4E456 



lOO 
1 lO 
120 
130 
140 
150 
160 
170 
180 
190 
200 
210 
220 
230 
240 
250 
260 



270 

280 



290 
300 
310 
320 
330 
340 



1=1000 

DIM INTAKE* (45> , BLK4 (45) .OUT* (45) 
BLK* (1,1)=" " 
BLK4 (45, 45) =" " 
BLK* (2) =BLK« 
INTAKE*=BLK* 
OUT*=BLK* 

OPEN #1 , 4,0, "DtDISASSEM" 
OPEN #2,8, O, "D: OUTPUT- 
TRAP 340 

INPUT #1; INTAKE* 
INPUT #1 ; INTAKE* 
INTAKE«=BLK* 
INPUT #1 ; INTAKE4 
OUT* (1,4) =STR« < I > 
0UT*(5,6)=" 

IF INTAKE* (22, 23) ="7?" THEN OUT* ( 
7) =" . BYTE 4" : OUT* C 14, 15) = INTAKE* C 
9,10): GOTO 280 
OUT* (7)=INTAKE*(22) 

OL=LEN (OUT*) +1 : FOR M=OL TO 2 1 : OUT 
*<M,M)=" ":NEXT M : OUT* ( 22 , 23 ) = " ; 
■•:OUT* (24. 27) = INTAKE* (1,4) 
? #2;0UT« 
OUT*=BLK* 
INTAKE«=BLKt 
1 = 1+2 
GOTO 230 
CLOSE #1:CL0SE #2:END 



Program 4: Output File structure For DOS 2 



lOOO 
1002 
1004 
1006 
1008 
1010 
1012 
1014 
1016 
1018 



BRK 
. BYTE 
BRK 
. BYTE 
RTI 
DRA 
. BYTE 
. BYTE 
. BYTE 
-BYTE 



*03 

*07 

44C, 
414 

407 
*03 
*03 



0700 
0701 
0702 
0703 
07O4 
0705 
0707 
070a 
0709 
070A 



May 1983 COMPUTE! 257 



MORE TO SMILE ABOUT! 



iLjC 



3 (V£W Arcade-Style Games (rom Canada for the 
Commodore' VIC'20*. and, one tor the Commodore' 
64! Brought to you by JMC,your"SOURCE"forover 
3.500 different books, programs and accessories, 
from overSS different manufacturers, for Ail Major 
Brands o! Personal Computers! 

DEALER INQUIRES ALWAYS WELCOME 



NEW NEW NEW NEW mm 



FWOGGEE Ifseasy^ Jusl gel your Froggee from the bottom of the 
screen to the top Avoidlhe car sand [rucks, hoponiheiogsandtt^e 
leaves. Eight levels, with crocodiles, sriakes and other neat stuff 
out to do yOLi m' Uses Joystick Needs no memory expansion. 
41B0-O20OO1 For3KVIC-20" (Cassette) S29.95 

4180-064001 ForCommodore* 64" (Caaaetto) S29.95 

CENTIPOD Fast paced, decending bugs, falling projectiles, boun^ 
cing spiders and more! Quick reactions needed here, ^ust to keep 

alive' Uses Joystick. No memory expansion needed. 
4180-020002 For3KVIC-20' (CaBSettBl S29.95 

MOTOR MOUSE Up and down the grandfather clock, picking-up 
the cheese. But. watch out! Thefe a'-ecats hiding in the cheese' 7 
progressivety harder levels anda time factorto beat. Very fast paced 
arcadegualilygsme. Uses Joystick tMo memory expansion needed, 
4180-020003 For3KVlC-20^ (Caasettol $29,95 



FROM CANADA. FOR THE VIC-20- AND 
FOR THE NEW COMMODORE 64 




COMMODORE 64' SOFTWARE 



EASYMAILW Fully lealurecj name and afldi 
ess program 'Of businessclubor arganu ation 
4100-064204 Ql«k »49,B5 

WORD MACHINE/NAME MACHINE Perlect 
easy-lo-understand wordprocessingprodiiCI. 
designed as an enrrv level item lor home For 

notes ID Ihe kids, lellers to Inends- etc 
410O-0S4210 Di»h »a0.9S 

PET EMULATOft'Anemulalorlhal wilJallow 
a hiyh level ol eKislmg PET" sollware to bee*- 
eculoO on Ihe COMMODBE 64' especcsHy 

educalional materials 
4100-004107 DtiK S29.BS 



COMMODORE- VIC-20' BOOKS 



VIC BASIC: A Uvnr-Friflndly Guide Explains 
how'to-do-it— make rainbows, music & more' 
469000337 B »1S.95 

ZAP* POW! BOOM! How lo pfOQiam ac ten games 

on Ihe VIC-20' 
4690-009538 t12.95 

KIDS AND THE VIC Written at cHilOren not 
oown to It^em Turns krds. (and vinsuspecting 
parental, itno computer ewperls n days Incl- 
udes How to Program How to Make Games. 
How to Create Study Programs. More' Eacti 
cTiapler contains pareni sections, (or working 

along or in tielping wittl the rough spots 
4560-000056 J19.95 

VIC-KT PROGRAMMERS REFERENCE GUIDE 
Complete BASIC vocabulary guide, machine 

language orogiamming, lips and motei 
4100-000110 _ $1B.9S 

COMPUTE!! J) FIRST BOOK OF VIC* A comp- 
nation ol aiticlesliom the COMPUTgi magaime 

410S-000007 »1 '-95 

~TIHE)t/SINCLAIH l60O<ZXBl) BOOK S 
37Time«/Sinelair1OO0- ZX-B1 ' Proof»ni« 
for Home. School a Office Easy to L»se guide 

'oi beginner or espeit 
40B0OOO0J1 » *•** 

101 Tlm«n/S«nclBir 1000 ZX-81 ' Proo«m- 
ming Tipsl Tricki Most belplul guidebook 
4Oa0-0OO030 s '-ss 

The Sinclair ZX-B1 ' Progiammmg loi Real 
Apo'icalions ir bepth piograns and uses 
4250-000090 



ATARI- 400VB0O* BOOKS 



VOUR ATARI' COMPUTER Comprehensive 
hammg manuar lor 40D'^B00' computers 
4465-000065 458 Pages S16.9S 

ATARV GAMES i RECREATIONSSouiceof 
pre- program med games Also leaches graptiics 

and addition of color and sound 
4690-000143 J14.95 

ATARI- PILOT FOR BECINHERS Hands-on 
intio ID ATAr^l' PILOT computet languaQe 
4690-000301 »12.iS 

THE ATARI' ASSEMBLER Making the leap 
Ifom BASIC lo ATAfils' assembly language, 
4690-000236 $13.95 

TH E VISICALC BOOK: ATARI' EDITION A pt:> 
gram perfect lor businesses and businessinen 
4690008393 114.95 

COMPUTE!!*) FIRST BOOK OF ATARI' Com 
Dilation oTaiticleslrotn COMPUTE' maganne 
4105-0O0O00 111.95 

COMPUTE!|l) SECOND BOOK OF ATARI' 
More articles trom COIvlPUTE' fnagaijne 
4105-000006 t12.»5 

KIDS ANDTHE ATARI" See description at left 

under KIDS AND THE VIC 
4560-000055 $19.95 



APPLE' iOOKS 



APPLE' II USER'S GUIDE Complete BASIC 
programmrng too' Special features 368 pages 
4665000046 $16.95 

ASSEMBLY LAftOUAGE PROGRAMMING 
FOR THE APPLE' II Compiehensiwe under- 

slandatile intio Appendices t6D pages 
4665-00O05I SI 3.95 

6602 ASSEMBLY LANGUAGE PIfOGRAMMINO 

Provides exari^ples simple memory load loops 

to complete design protects 640 pages 
4605-000037 $16.99 

8ASIC FOR THE APPLE" Intro to program 
mi ng and applications IrKludes games g raph res 

t le management and word processing 
469O-0OO1S9 $14.95 

KIDS AND THE APPLE" See description at lelt 

undei KIDS AND THE i'lC 
456O-000C19 $19.95 



S1 1.95 



jMC's Computef-SOURCE BOOK '"Catalog. 

viriuativ every brand of m.c'ocompuiei made 



Over 2 000 books programs and accessories tor 
?Paqes 0001-19a307 $ 2.00Ppd. 




WfW'TheCOMH(10D0RE64" PROGRAMMER'S REFERENCE 
GUIDE EvefYlhiny you noerd lo know to get st.nrled piotFi'iiTimiTOj 
Commodotes" newest, and tnos! ueisaiile persona! compuler 
Steo by step guides in language thai is easy to undeistand Tips 

and a whole lot ttiore' Our most asked lor publicaTion' 
4760-022056 SIM. S3 



DESCHiPllOt^ OF ITEM 



"t-ir 



(D 



fjQi: 

..jO 
=^ = -' 

Suiuj' 

l-3_l 
[CQ_t 

s« 

UI 
IS 



I Orders under $3 5 Please Add S2 60 Post, SHantJImg Illinois totalI 
Residents Piease Aao 5"^ Sales Ta« All Calaioas Shipped Ppd 1 







PAYMENT ENCLOSED QCASH QCHECK QmONEY ORDER 
PLEASE CHARGE TO MY □MASTERCARD QviSAiM.n Chg S2b 



CARD NUMBER 

EXPIRES 



. INTRBNK « 




1020 


BRK 




1022 


. BYTE 


*7C ; 


1024 


. BYTE 


«1 A ; 


1026 


ORA 


(*04, X) ; 


102S 


BRK 




1030 


ADC 


*07CB, X ; 


1032 


LDY 


*070E ; 


1034 


BED 


t074F ; 


t036 


LDA 


$0712 ; 


103B 


STA 


«43 ; 


1040 


STA 


«0304 ; 


1042 


LDA 


t0713 ; 


1044 


STA 


*44 ; 


1046 


STA 


«0305 ; 


104B 


LDA 


«07 10 ; 


1050 


LDY 


«070F ; 


1052 


CLC 




1054 


LDX 


«070E ; 


1056 


JSR 


*076C ; 


1058 


BMI 


*074F ; 


1060 


LDY 


*0711 ; 


1062 


LDA 


(443> . Y : 


1064 


AND 


#*03 ; 


1066 


PHA 




1068 


INY 




1070 


ORA 


(«43> , Y ; 


1072 


BEQ 


♦0753 ; 


1074 


LDA 


(«43) , Y ; 


1076 


TAY 




107B 


JSR 


40757 ; 


1080 


PLA 




1082 


JMP 


«072F ; 


1084 


LDA 


««C0 ; 


10B6 


BNE 


«0754 ; 


10B8 


PLA 




io?o 


ASL 


A ; 


1092 


TAY 




1094 


RTS 





070B 
070C 
070D 
070E 
0710 
07 1 1 
07 14 
07 17 
07 19 
071C 
071E 
0721 
0724 
0726 
0729 
072C 
072F 
0730 
0733 
0736 
0738 
073B 
073D 
073F 
074O 
0741 
0743 
0745 
0747 
0748 
074B 
074C 
074F 
0751 
0753 
0754 
0755 
0756 





NEW FOR ATARI 

diskwiz 

COMPLETE & AFFORDABLE 
DISK EDITING REPAIR & DUPLICATION 
SYSTEM FOR ATARI OR PERCOM DRIVES 

• Fast M/L operation • Repair DOS/NON DOS sec- 
tors • On screen Hex/ASCII editing • Print out all 
modes to any printer • Dumps inverse & special 
Grafix Char to Epson Graftrax & NEC 8023A • Fast 
mapping, searches • File trace • Speed check and ad- 
just • Block move • Auto link pointers, file codes • 
VTOC bit map functions • Retrieves deleted files • Fix 
dup filename • Use nonformatable disks • Complete 
manual • Easy, fast, complete • Onboard 
disassembler • Even runs on 16K • Supports 1 or 2 
drives • HEX-DEC-ASCII Converter • And Morel 

All this for only $25. postpaid 

Don't waste your money on more expensive 
programs that don't deliver as much. 

48 hr. shipping for cashiers checks & money orders. 
Allow up to 3 weeks for personal checks, — C.O.D. 
add $2.00. Club & dealer enquiry encouraged. 
AUEN «13.37«I05 

Macroware 



1906 Carnegie Lane "E" 
Redondo Beach, CA 90278 



v 



Auri. Ep«n. NEC & Pcrcom, are iradenurtis (li Aljti. It^c, Ep«)n America, NEC. 
Percon> Dala renpeclivt^ly. 



258 COMPUni MoyWa3 



COMPUTEi's 

Mapping The Atari 



Author: Ian Chadwick 

(Introduction by Bid Wilkinson| 
Price: SI 4.95 

On Sale: Now 



TABLE OF CONTENTS 

Author's Preface 

jntroduction (Bill Wilk.nsoni ^ 

Memory Map . ^.^ 

Appendix One VBLANK Processes' ^ 

Append, P„„ „-7-;jV^^^^^^^^^^^^ ■•'■"-■.ieO 

Appendix Five Color ^ °^' 161 

wTf^'°""'^"dM-^'c 163 

'ippendix Seven Pi^ w ic 

Append,, a.M .Xt:::;"^ "-^'- "-- ^'ap ■ : : : : ,11 

AppendixNine NumericaJ To 171 

Appendix Ten ATASC ^^ r '^^""^ ' " 1 7 

^-<i-x By Label . " ^ ^"^^™^^ ^^--^- Code Values' " " ' 1 

Index By Subject ...".'..■.■.;; ." .182 

187 



The inner workings of today's advanced personal 
computers unfortunately remain a mysteiy to 
many users. From beginners to machine lan- 
guage programmers, people are hungry for vital 
information about the insides of their machines. 
For example, there are tens of thousands of 
memory locations.. .which are safe to use? How 
can changing one number in a certain memory 
cell dramatically speed up output to the disk 
drive? Which memory address reveals what 
Operating System is in the computer? How can 
changing certain numbers in various memory 
locations improve a program's sound and 
graphics? 

The key to finding one's way around the 
inside of a computer is a memory map. But 
often this important information is unavailable 
from the manufacturer. Or it can be obtained 
only in piecemeal fashion from scattered 
sources. 

Now, for ihe first time, there is a com- 
prehensive guidebook available for the Atari 
400/800 computers which answers all of these 
questions, and hundreds more. Mapping The 
Atari, by Ian Chadwick, is a complete reference 
guide and memory map for one of the most 
popular of personal computers. From memoiy 
location zero to 65,535. Mapping The Atari is 
the most exhaustive memoiy sourcebook ever 1 
offered to Atari users. : 

Chadwick started by diligently assembling 
all the information he could find. Then he went a 
step further by testing this information, to verify 
Its accuracy. And finally, he added months of his 
own research, delving deep into little-known 
areas of the Atari's memory to explore every se- 
cret. The result. Mapping The Atari, is an indis- -—-._- 

pensable reference work for Atari programmefs. 

But Mapping TheAtariiS more than just a comprehensive reference book It is also a tutorial 
for all inquisitive Atari enthusiasts - notjust advanced programmers. Mapping The Atari explains each memory location in depth for 
beginning and intermediate programmers. Some descriptions of important locations fill several pages. And the book is packed with 
ready-to-iype example programs and routines which show exactly how to put the information to work 

There's more. A special introduction by Bill Wilkinson, an author of Atari BASIC and the Atari Disk Operating System explains 
^vZANfpTr^^!J^--!l'^^^°'^ 'Iffy ^X^^'"^ programming language. And there are fen appendices, covering such topics as 
VBL>\NK Processes, Atari Timing Values, "Color," "Sound And Music, " "Player/Missile Graphics Memory Map " ''DisDiav Usts " 
and others. And to make the book still mote useful, there are two indices - an Index By Label, and an Index^By Subject ^ 

Best of al Mapping The Atari is from COMPUTE! Books, associated with COMPUTE! Magazine the leading consumer 
publication of home, educational, and recreational computing. COMPUTE! has led the way for Atari owners sincl the comouters 

Add S2 shipping and handling. Outside the U.S. add S5 for air mail, S2 for surface mail. All orders prepaid. U.S. funds only 



Mo/ 1983 COMPUIE 259 



The Apple 
Hi-Res Painter 

James Totten 

"Hi-Rcs Painter" is a grapiiics editor for use with a 
32K Apple. With it you can: use am/ one of six colors 
(or coDibiiic colors with your "pen"]; select from three 
different drawing pens; label pictures with upper- aiui 
krwercase lettering; color in squares, rectangles; ami 
uuve. 

When using the Apple's hi-res graphics, it seems 
that a lot of work can yield few results. This is 
true, of course, only if you are doing your graphics 
manually (HPLOT 0,0 TO 45,67 etc.)' Since I use 
the graphics considerably (they are one reason I 
bought the computer), I didn't cnjov taking hours 
to draw a fairly impressive title page or chart or 
some other type of picture. 

Menu Options 

The "Hi-Res Painter" runs from four menus: Main 
Menu (1), Accessory Menu (2), Diskette Menu 
(3), and, most important of all, the Picture Menu 
(4). When you start, you are automatically placed 
at the first menu (Main). From here you can select 
to go to any of the other three menus presented 
by just pressing the first letter of its name. This 
letter is highlighted on the screen. 

Pressing A will take you to the Accessory 
Menu (2). Here, you can choose from p)rint, f)ill, 
k)eyboard, and m)ain. The print option will work 
for those who own either a Trendcom or Silentype 
printer only. The fill option works for everyone. 
You select two points on the screen: the first is 
the upper left corner of the square you wish filled, 
and the other is the lower right corner. Presto! 
The keyboard option allows the user to change 
from paddle or jovshck control of the pen to 
keyboard control of the pen. With the change, the 
I, J, K, M keys move the pen in the direction they 
are positioned. And, of course, the main option 
will take you to the main menu again. 

The next menu in the list is the Diskette Menu, 
number three, and you can call that menu by pres- 
sing D. Here you can n)ame, d)elete, s)ave, l)oad, 
or r)ename any picture - s)ave will save the picture 
currentiv on the screen. Again, m)ain will return 
you to menu 1 . 

Finally, menu four is the Picture Menu, and 
to call it up press P. The available options here 
are: v)iew, l)abel, b)drop, c)olor, d)raw, e)rase, 
p)ens, and m)ain. The first option allows simply a 
total view (no text) of the graphics screen which 

260 COHPUTI! Mav1983 



you are working on. Label wUl do just that; you 
are asked for a date, name, or whatever to be tvped 
in on the keyboard, and it is then transferred to a 
location of your choice onto the graphics screen. 

The bhirop option stands for backdrop, and 
this will simpiv fill the screen (rather quickly) 
with a color of your choice. Color will allow you to 
choose a new color. Press the first letter of each as 
in the menu selections. DnTie and fra.^c are obvious 
in that they do exacth' what they sav. A note of 
warning though: if a picture is erased, it cannot 
be recalled unless it is on disk. The pens option is 
actually two in one. With it you can change the 
size of vour pen {press I, 2, or 3 and watch the 
screen), and turn it on or off. And again, main 
returns you to menu one. You can draw using 
paddles or a joystick, or you can switch the con- 
trols to use the keyboard. 

To produce very good-looking designs, trv 
some experiments. Fantastic pictures (such as 
stars on a moonlit night) can easily be created bv 
just mining the pen in various sizes and colors. 





::>i>i 






A desig)! created wiih a paiitUe controller ks/j/x "!li-Rcs 
Painter." 

Program 1: Hi-Res Painter 

20 LOMEMi 24576: ONERR BOTD 1045 

21 DIM PX(2),PY(Z),C«(6) ,P»(1) 

25 FOR L = 1 TO 4:MX<L) = OsMYtL) = 0: NEXT 

L:D« = CHR« (4) s C = 3: P = Oi BC = 
30 KI = - 16384: RK = - 1636BSB0 = - 162B7 

iBl = - 162a6:TG = - 16301:FG = - 16 

302 
35 P»(0) = "GFF"iP*(l) = "0N":C*(1) = "BREEN 

"iC*t2) = "PINK"!C*(3) = "WHITE" 

40 C»(4) = "BLflCK"tC«(5) = "ORANGE" i C» (6> = 

"LT.BLUE"tI = liP* = "NOT NAMED" 

41 IF PEEK (233) < > 64 THEN PRINT D«"BL 

DAD CHARACTERS/SH2": POKE 232,0: POKE 2 
33,64 

42 SCALE= li ROT= Oi X = 13<?iY = BO 

43 TEXT ! HOME i NORMAL i VTAB 10: PRINT 

TAB (11) "THE HI-RES PAINTER": PRINT TAB 
( 7, .._«( )=-": PRINT 

TAB<11>"BY JAMES R. TOTTEN" 

44 POKE RK.Oi VTAB 24: PRINT "<< TO BEGIN P 



45 
4& 
50 

55 

^0 

65 

70 
75 
BO 

as 

100 
105 

110 

115 
120 

125 
130 
132 
134 
136 
136 
140 
142 
145 
146 

147 
150 



P) ICTURE 



POKE 



USH ANY KEY EXCEPT RESET >>" 
IF PEEK (KI) < 12B THEN 45 
POKE RK,0 
HGR I HCDLOR= Ci POKE TG.Oi POKE 34,20s 

HOME 
PRINT "PAINTER HENU NUMBER 1 (MAIN)"! 

PRINT 
PRINT "A)CCESSORy D) ISKETTE 

>"; I SET K* 
IF K« = CHR» (27) THEN POKE RK,0! 

34,0: TEXT : HOME s END 
IF K* = "P" THEN 100 
IF K« = "ft" THEN 450 
IF K* = "D" THEN 300 
POKE RK,0s HOME i GOTO 55 

POKE RK,0: HOME 

PRINT "PAINTER MENU NUMBER 4 

I PRINT 

PRINT "V)IEW DABEL B>OROP 

D)RAW E>RASE P>ENS M)AIN 

IF K* = "M" THEN 85 

IF K* = CHR« (27) THEN POKE RK,0: POKE 
TEXT ! HOME s END 

^ It ^ 11 



(PICTURE) ' 

OOLOR 
>";! GET K* 



34,0! 
IF K» 

IF K« = "V 
IF K« = "C" 
IF K» = "B' 
IF K« = "D" 
IF K* = "P" 
IF K» = "L" 
POKE RKpOi HOME 
POKE FG,0 
IF PEEK (KI) 
GOTO 100 
GOTO 146 
POKE RK.Oi HOME 



THEN 
THEN 145 

THEN 150 
THEN 240 
THEN 
THEN 



HGR sBC = 0: GOTO 100 



185 
164 



THEN 218 



GOTO 105 



> 127 THEN POKE TG.Os 



PRINT "CURRENT COLOR: 



152 

154 
155 
156 
158 
159 
160 
162 
164 
165 

166 

167 
168 
169 
170 

171 
172 



174 
176 
177 
17B 
179 



180 

162 

185 
186 



187 



W)HITE 



"ji INVERSE 1 PRINT C«(C)i NORMAL i 
PRINT 
PRINT "G)REEN ORANGE 
B)LACK DT.BLUE P) INK 
6" THEN C 
THEN 
THEN 
THEN 
THEN 
THEN 



GET K« 



"P" 
"W" 
"B" 

"0" 

II I II 



C 
C 

c 
c 
c 



I: 
2: 

3! 

4: 

5: 
6: 



IF K« = 

IF K* = 

IF K« = 

IF K« = 

IF K* = 

IF K« = 

GOTO 150 
XC = INT ( 

POKE RK,0! 

"I PRINT 

PRINT "S)ET CURSOR SIZE 
>"5: GET K» 

IF K* = "S" THEN 172 

IF K* < > "T" THEN 165 
P = P + 1: IF P 



GOTO 
GOTO 
GOTO 
GOTO 
GOTO 
GOTO 



100 
100 
100 
100 
100 
100 



190 

191 

192 

194 
196 
198 
200 
202 
204 

205 

206 
208 

209 

210 

212 

215 
21B 

219 
220 

222 
224 
225 
226 

228 
230 



231 
232 

233 
234 
240 



OiB 



liRL = 274iTL = OiB 



IsRL = 270:TL = OiB 



Y = I NT ( PDL { 1 ) ) 
= LL 
= RL 
= BL 
CS; HPLOT L,Y TO L,Y + 



> 127 THEN POKE TG.Oi GOTO 



HPLOT 
C 



(Bl) 
Y 
(BO) 



> 127 THEN 



> 127 THEN 



IF CB = O THEN LL = 1 s RL = 279; TL 

L = 191 

IF CB = 4 THEN LL 

L = 186 

IF CS = 8 THEN LL = 

L = 182 

HCOLOR= C 
X = INT < PDL (O) ) 

IF X < LL THEN X = 

IF X > RL THEN X = 

IF Y > BL THEN Y 

FOR L = X TO X + 

CSl NEXT L 

IF PEEK (KI) 

100 

IF P THEN ^10 

HCOLOR- BCi FOR L = X TO X + CSi 

L,Y TO L,Y + CSi NEXT Li HCOLOR- 

IF PEEK (KI) > 127 THEN POKE TG,0: GOTO 

100 

IF CS -= THEN IF PEEK 
CALL - 19BiX0 - XiYO - 

IF CS - THEN IF PEEK 
HPLOT X,Y TO XO.YO 

GOTO 196 

POKE RK,0: HOME : PRINT : 

LABEL >";L» 

IF L« = "" THEN 21B 

HOME I PRINT ! PRINT "DO YOU WANT IT ON 
TOP OR BOTTOM CT/B)? ";: GET K» 

IF K« = "B" THEN Y = 180i GOTO 226 

IF K« = "T" THEN Y = 6: GOTO 226 

SOTO 220 
L = LEN (L»)t IF L > 26 THEN 218 
X = 137 - INT ((L / 2) « a) 

FOR P = 1 TO Li IF ASC ( MID* (L«,P, 1) 

) < 62 THEN K = ABC ( MID* (L*,P,1)) - 

31 I GOTO 232 
K - ASC ( MID* (L«,P,1)> - 3 

HCOLOR= Os FOR L=X-2T0X+7! HPLOT 

L,Y - 1 TO L,Y + Bs NEXT L: HCOLOR= 3 

DRAW K AT XpYsX = X + 8i NEXT P 

HCOLOR= C: GOTO 100 

POKE RK,0: HOME 5 PRINT "COLORS FOR BAC 

KDROP..."i PRINT : PRINT "G)REEN B)LUE 
0) RANGE": PRINT 



INPUT "ENTER 



W)HITE 



">"j 



PDL (O) ):YC = 
HOME : PRINT 



INT < PDL (1) ) 
'PEN OPERATIONS 

T)URN ON/OFF 



HOME : PRINT 



> 1 THEN P 
PRINT "PEN 



= 

IS NOM 



'P«(P) 



I FOR L = 1 TO 300: NEXT L 

GOTO 100 

POKE RK.O: HOME t PRINT "TYPE A NUMBER 

FROM 1 TO 3 FDR CURSOR SIZE (1=SMALL 

EST). CURSOR IS SHOWN ON SCREEN. WHEN 

DONE, PUSH RETURN. >"ji GET K* 
IF K* = CHR* (13) THEN 100 
IF K* = 



■1" 
II 3 II 



IF K* = 
IF K* = 

HCOLOR= BC 

HPLOT L,YC 

HCOL0R= C 

FOR L = XC TO XC 

YC + CSi NEXT L 

GOTO 172 

IF K THEN 1010 

POKE RK.Oi HOME i 



THEN CS = 
THEN CS = 4 
THEN CS = 8 

FOR L = XC - 1 TO XC + as 
1 TO L,YC + 8i NEXT L: 



+ CS: HPLOT L,YC TO L, 



PRINT I PRINT 



IN OR STOP DRAWING PUSH ANY KEY "i 

K» 

POKE FG.Os POKE RK,0 



TO BEG 
GET 



242 

243 

244 

245 

246 

247 
248 
250 
300 
302 

304 

306 
308 

310 
311 
312 
313 
314 
315 
320 



THEN HCOLOR= IsBC = 1: GOTO 



P) INK 
GET K* 
IF K» - "G' 
248 

IF K« = "B" THEN HC0LOR= 6:BC = 6: GOTO 
248 

IF K« = "P" THEN HC0LOR= 2!BC = 2: GOTO 
248 

IF K« = "W" THEN HCOLOR" 3tBC = 3t GOTO 
248 

IF K« = "0" THEN HLaLaR= 5:BC 
248 

GOTO 240 

HPLOT 0,0: CALL 62454 
BD = li GOTO 100 
POKE RKjOi HOME 
PRINT "PAINTER MENU NUMBER 3 
": PRINT 

PRINT "N)AME D)ELETE S)AVE 



5 I GOTO 



(DISKETTE) 



DOAD R)ENAME M>AIN 
IF K* = "M" THEN 85 
IF K« = CHR* (27) THEN 
34,0 I TEXT 1 HOME : END 

"N" THEN 320 

"S" 



>"ri GET K* 
POKE RK,0s POKE 



IF K« 

IF K« 

IF K« = "L" 

IF K« = "R" 

IF K* = "D" 

GOTO 300 

POKE RK,Os HOME s 

OR COLONS IN NAME 

fP» 



THEN 335 
THEN 355 
THEN 385 
THEN 370 



PRINT "USE NO COMMAS 
"I PRINT I INPUT "> " 



May19S3 CQMPUTEI IM 



325 IF P« = "■' THEN 320 

330 HOME : PRINT "NAME: "P«: NORMAL 

332 PRINT : PRINT "IS THIS CORRECT? " ; : GET 
K»s IF K* = "N" THEN 320 

333 IF K» = "Y" THEN 300 

334 POKE RK.Oi BOTO 330 

335 IF P» = "NOT NAMED" THEN HOME : CALL - 
198s POKE RK,Ol PRINT : PRINT "PICTURE 
HAS NOT BEEN NAMED": FDR L = 1 TO 550: 
NEXT Ls GOTO 300 

340 POKE RK,0: HOME : PRINT "PICTURE NAMEi 
"P«i PRINT 

345 PRINT "SAVE WITH THIS NAME? ";: GET K*: 

PRINT K«: IF K« = "Y" THEN 350 

346 IF K« - "N" THEN 300 

347 GOTO 340 

350 PRINT D»"BSAVE "P»" , A*200O, L»1FFF" i GOTO 
300 

355 POKE RK,0: HOME : PRINT s INPUT "NAME? 
"(P« 

356 IF P« = "" THEN 355 

35B HOME : PRINT "PICTURE NAME: "P«i PRINT 
360 PRINT "IS THIS NAME CORRECT? ";: GET K» 
I PRINT K» 

362 IF K» = "N" THEN 300 

363 IF K* * "Y" THEN 365 

364 GOTO 35B 

365 PRINT D»"BLDAD "P» 

366 GOTO 300 

370 POKE RK,0s HOME i PRINT s INPUT "NAME? 
";P» 

371 IF P» = "" THEN 370 

372 HOME t PRINT "PICTURE NAME: "P»i PRINT 

375 PRINT "DELETE THIS PICTURE? ";: GET K»i 

PRINT K» 

376 IF K* = "Y" THEN 3B0 

377 IF K« = "N" THEN 300 

378 GOTO 372 

3B0 PRINT D»"DELETE "P«i GOTO 300 

385 POKE RK.Oi HOME i PRINT "USE NO COMMAS 

OR COLONS IN NEW NAME": PRINT 
3BB INPUT "CURRENT NAME? "jPl*: IF Pl« " "" 

THEN 385 
390 INPUT "NEW NAME? ";P2«t IF P2» = "" THEN 

385 
393 HOME I PRINT "OLD NAME: "Pl«« PRINT "NE 

W NAME: "P2*t PRINT 

395 PRINT "ARE THESE BOTH CORRECT? ";: GET 
K«i PRINT K*i IF K* ' "N" THEN 385 

396 IF K* = "Y" THEN 400 
39B GOTO 393 

400 PRINT D«" RENAME "Pl«","P2«i GOTO 300 

450 POKE RK.Oi HOME 

452 PRINT "PAINTER MENU NUMBER 2 (ACCESSORY 

)"i PRINT 
454 PRINT "P)RINT F) ILL KJEYBOARD M)AIN 

>"ji GET K» 
456 IF K« •= "M" THEN POKE RK.Oi HOME i BOTO 

55 

458 IF K» - CHR» (27) THEN TEXT i POKE RK 
,0i HOME I END 

459 IF K* - "P" THEN 475 

460 IF K» = "F" THEN 500 

461 IF K« = "K" THEN 465 

462 GOTO 450 

465 POKE RK.Oi HOME i IF K THEN K = Oi GOTO 
468 

466 IF NOT K THEN K = 1 

468 IF K = THEN PRINT t PRINT "KEYBOARD 
IS CJFF" 

469 IF K = 1 IMEH PRINT i PRINT "KEYBOARD 
IS ON" 

470 FOR L - 1 TO 300i NEXT Li SOTO 430 

473 POKE RK.Oi HOME i PRINT "PICTURE PRINTI 

NQ OPTIONS -"I PRINT 
476 PRINT "DNVERSED N)ORMAL 

R)OTATED OONTINUE >" S i GET K* 



478 


IF K» = "N" THEN ST = Oi 


GOTO 475 


480 


IF K* = "1" THEN ST = li 


GOTO 475 


482 


IF K« = "R" THEN RR = 1 : 


GOTO 475 


484 


IF K* = "C" THEN 488 




486 


GOTO 475 




4B8 


POKE RK.Oi HOME i PRINT 


! PRINT "TURN P 




R INTER ON AND PRESS ANY 


KEY " ( : GET K* 


490 


IF RR AND ST THEN POKE 


1145,88: CALL - 



CALL 



1603 



16036s 



16038: GOTO 450 

492 IF RR THEN POKE 1145,120: CALL 
B: GOTO 450 

494 IF ST THEN POKE 1400,0: 
BOTO 450 

496 CALL - 16044: GOTO 450 

500 POKE RK,0i HOME i INPUT 

NT (X,Y) >"jUX»,UY*: IF UX» 

« = "" THEN 500 

IF ( VAL (UX*) < 0) OR ( VAL (UX«) > 27 

9) THEN 500 

IF ( VAL (LY») < 0) OR ( VAL tLY») > 19 

1) THEN VTAB PEEK (37): GOTO 507 

INPUT "LOWER RIGHT POINT (X,Y) >"5LX*, 

LY»: IF LX« = "" OR LY* = "" THEN VTAB 

PEEK (37) I GOTO 507 
IF ( VAL (LX») < O) OR ( VAL (LX») > 27 
9) THEN VTAB PEEK (37): GOTO 507 
HOME t PRINT : PRINT "PRESS A KEY TO BE 
GIN FILL ";: GET K*: PRINT K« 
HCOLDR= C 

TO VAL (LX«): HPLOT 
VAL (LY*) 1 NEXT L 



505 
506 
507 

SOS 

510 

511 
515 

520 

1010 

1012 
1015 

1016 

1017 

1018 
1019 

1020 

1021 
1023 
1024 
1025 
1026 
1027 
1028 

1029 

1030 

1031 

1032 

1033 

1034 
1035 
1036 
1037 
103B 
1039 
1040 
1045 

1050 



"UPPER LEFT POI 
" OR UY 



(UX«) 

TO L, 



FOR L = VAL 
L, VAL (UY») 
GOTO 450 

POKE RK,0: HOME i PRINT : PRINT 
GIN OR STOP DRAWING PUSH RETURN " 
K« 

POKE FG,0: POKE RK,0 



"TO BE 
( I GET 



IF CS = 
BL = 191 

IF CS = 
BL = 186 

IF CS = 
BL = 182 

HCOLDR= 

FOR L = 
CS: NEXT 

IF NOT 



THEN LL 



1:RL = 279: TL = O: 



4 THEN LL = 1:RL 



274 :TL 



a THEN LL = ItRL = 270iTL 



0: 



0: 



TO X + CSi HPLOT L,Y TO L,Y + 



THEN 



HCOL0R= BC: FDR L 
X + CSi HPLOT L,Y TO L,Y + CSl NEXT Li 
HCOLOR- C 

128 THEN 1019 



X TO 



IF 

L = 
IF 
IF 
IF 
IF 
IF 



PEEK 

PEEK 



(KI> 
(KI> 



201 THEN 
205 THEN 

202 THEN 

203 THEN 



Y 
Y 
X 

X 
X 



It 
li 

li 
li 

liY 



BOTO 1036 
BOTO 1036 
GOTO 1036 
GOTO 1036 



X - liY = Y + li 



X + liY 



Y - li 



1:Y = Y 



1: 



213 THEN 
GOTO 1036 

IF L =• 206 THEN 
SOTO 1036 

IF L - 207 THEN 
SOTO 1036 

IF L - 172 THEN 
GOTO i036 

IF (CS = 0) AND (L » 211) THEN XO = Xi 
YO - Yt CALL - 198i GOTO 1036 

IF (CS - 0) AND (L = 196) THEN HPLOT 
X,Y TO XO,YOi GOTO 1036 

IF L = 141 THEN POKE TG.Oi GOTO lOO 

POKE RK,Oi GOTO 1021 

IF X < LL THEN X = LL 

IF X > RL THEN X - RL 

IF Y > BL THEN Y = BL 

IF Y < TL THEN Y - TL 

POKE RK.Oi GOTO 1019 

HOME 1 PRINT I PRINT "DISK ERROR CODE 
" PEEK (222) I PRINT "CHECK SYNTAX AND T 
RY AGAIN >"(« GET K« 

POKE RK,Oi HOME i GOTO 55 



262 COMPtfTi! May 1983 



Pro! 


grc 


im 


i2: 


: Shape Table For Picture Labels 












4500- 
4508- 


IF 
IF 


57 
IB 


49 
OE 


11 
OD 


00 
OD 


49 
lA 


09 
IB 


lA 
IF 


4000- 


- 58 


00 


B2 


OO 


C5 


00 


oe 


00 


4280- 


OD 


lA 


IB 


IF 


OA 


4D 


11 


IB 


4510- 


OA 


OD 


OD 


lA 


IF 


IB 


4E 


49 


4008- 


- EC 


00 


02 


Ol 


15 


01 


29 


01 


4288- 


IB 


57 


4D 


i 4 


00 


29 


6D 


lA 


4518- 


02 


00 


49 


09 


lA 


IF 


IB 






1 I 


6E 


4010- 


- 3C 


01 


4F 


01 


62 


Ol 


75 


01 


4290- 


IF 


IB 


6E 


09 


15 


IB 


3F 


17 


4520- 


09 


15 


3B 


IF 


73 


6D 


15 


3B 


4018- 


- 8A 


Ol 


9D 


01 


BO 


Ol 


C3 


01 


4298- 


4D 


29 


lA 


IF 


16 


OE 


2D 


OD 


4528- 


IB 


53 


2D 


OD 


02 


00 


49 


09 


4020- 


■ D6 


Ol 


E9 


01 


FE 


01 


12 


02 


42A0- 


02 


00 


29 


6D 


lA 


IF 


IB 


6E 


4530- 


lA 


3F 


3F 


4E 


69 


lA 


IB 


IF 


4028- 


• 26 


02 


3B 


02 


50 


02 


65 


02 


42AB- 


09 


15 


3B 


3F 


57 


49 


15 


36 


4538- 


OA 


4D 


11 


3B 


3F 


77 


49 


11 


4030- 


79 


02 


8D 


02 


A2 


02 


B6 


02 


4260- 


16 


73 


2D 


OD 


02 


00 


49 


09 


4540- 


00 


29 


4D 


lA 


3B 


IB 


4A 


69 


4038- 


■ C9 


02 


DD 


02 


Fl 


02 


06 


03 


42B8- 


lA 


IB 


3F 


OA 


6D 


11 


IB 


IB 


4S48- 


lA 


IF 


16 


4A 


69 


lA 


3B 


IB 


4040- 


■ 19 


03 


2C 


03 


41 


03 


55 


03 


42C0- 


S3 


6D 


11 


IB 


36 


57 


49 


11 


4550- 


OA 


6D 


11 


00 


09 


4D 


lA 


36 


4048- 


■ 69 


03 


7D 


03 


91 


03 


A5 


03 


42CB- 


00 


49 


09 


lA 


IB 


3F 


OA 


6D 


4558- 


3B 


6A 


09 


15 


16 


16 


53 


49 


4050- 


B8 


03 


CC 


03 


DF 


03 


F2 


03 


42D0- 


11 


IB 


IB 


53 


6D 


11 


IB 


36 


4560- 


11 


IB 


IB 


53 


49 


11 


00 


09 


4058- 


06 


04 


19 


04 


2C 


04 


40 


04 


42DB- 


17 


6D 


09 


02 


00 


49 


2D 


lA 


456B- 


4D 


lA 


3B 


3B 


6A 


09 


15 


3B 


4060- 


54 


04 


68 


04 


7C 


04 


8F 


04 


42E0- 


36 


IF 


OA 


6D 


11 


IB 


IB 


77 


4570- 


16 


33 


2D 


2D 


15 


3B 


IB 


33 


4068- 


A3 


04 


B6 


04 


C9 


04 


DD 


04 


42E8- 


6D 


11 


16 


3F 


53 


09 


2D 


02 


4578- 


4D 


29 


02 


00 


2D 


AD 


lA 


IF 


4070- 


' Fl 


04 


OS 


05 


lA 


05 


2E 


05 


42F0- 


00 


49 


09 


lA 


IB 


IB 


OA 


2D 


4580- 


3B 


OA 


4D 


15 


IB 


3F 


57 


4D 


4078- 


41 


05 


54 


05 


67 


05 


7C 


05 


42F8- 


OD 


lA 


IB 


IB 


OA 


2D 


OD 


lA 


4588- 


IS 


3B 


IB 


17 


2D 


6D 


02 


00 


4080- 


90 


05 


A3 


05 


B7 


OS 


CC 


05 


4300- 


IB 


IB 


4A 


49 


02 


00 


6D 


09 


4590- 


09 


6D 


lA 


IF 


36 


6A 


49 


lA 


4088- 


EO 


05 


F4 


05 


08 


06 


IC 


06 


4308- 


lA 


16 


3F 


4A 


6D 


lA 


3F 


IB 


4598- 


IB 


IB 


6E 


49 


lA 


IF 


3B 


4A 


4090- 


30 


06 


43 


06 


57 


06 


6B 


06 


4310- 


4A 


6D 


lA 


IB 


3F 


2A 


4D 


11 


45A0- 


6D 


02 


00 


2D 


6D 


lA 


IF 


36 


4098- 


7F 


06 


94 


06 


A8 


06 


BC 


06 


4318- 


00 


29 


6D 


lA 


IF 


IB 


4E 


09 


45AB- 


OA 


4D 


15 


3B 


IB 


S7 


4D 


15 


40A0- 


DO 


06 


E4 


06 


F8 


06 


OD 


07 


4320- 


IS 


IB 


3F 


53 


4D 


11 


IB 


IB 


45B0- 


3B 


IB 


17 


2D 


6D 


02 


OO 


2D 


40A8- 


21 


07 


36 


07 


4B 


07 


SF 


07 


4328- 


53 


4D 


11 


00 


29 


6D 


lA 


IF 


4568- 


2D 


15 


3B 


IB 


33 


4D 


09 


lA 


40B0- 


74 


07 


49 


09 


lA 


IB 


IB 


4A 


4330- 


IB 


6E 


OD 


15 


3B 


3F 


33 


OD 


4SC0- 


IB 


3F 


6E 


49 


lA 


IF 


IB 


2E 


40BB- 


49 


lA 


IB 


IB 


4A 


49 


lA 


IB 


4338- 


OD 


15 


16 


IB 


73 


2D 


2D 


02 


45C8- 


2D 


2D 


02 


00 


2D 


2D 


15 


36 


40C0- 


IB 


4A 


49 


02 


00 


09 


4D 


lA 


4340- 


00 


49 


09 


lA 


3B 


3F 


4A 


09 


45D0- 


IB 


33 


4D 


09 


lA 


IB 


3F 


6E 


40C8- 


IB 


IF 


4A 


4D 


lA 


IB 


IF 


4A 


4348- 


15 


3B 


3F 


17 


4D 


29 


lA 


3F 


45D8- 


49 


lA 


IB 


IB 


6E 


49 


02 


00 


40DO- 


4D 


lA 


IB 


IB 


4A 


4D 


02 


OO 


4350- 


3F 


4A 


49 


02 


00 


4D 


09 


lA 


45E0- 


29 


6D 


lA 


IF 


IB 


6E 


49 


lA 


40D8- 


69 


OD 


lA 


3B 


3B 


OA 


OD 


OD 


4358- 


3B 


IF 


2E 


4D 


15 


3B 


IB 


33 


45E8- 


3F 


IF 


6E 


09 


15 


36 


16 


73 


4OE0- 


lA 


IB 


IB 


4A 


49 


lA 


IB 


IB 


4360- 


60 


29 


lA 


36 


IF 


4E 


49 


02 


45F0- 


2D 


OD 


02 


00 


4D 


29 


lA 


IF 


40E8- 


4A 


49 


02 


00 


69 


OD 


lA 


3B 


4368- 


00 


49 


09 


lA 


36 


3F 


6A 


09 


45Fa- 


IB 


6E 


09 


15 


3B 


3F 


37 


40 


40F0- 


3B 


2A 


2D 


2D 


lA 


3B 


3B 


2A 


4370- 


15 


16 


16 


33 


4D 


29 


lA 


3B 


4600- 


29 


lA 


IF 


IB 


6E 


09 


15 


00 


40FB- 


2D 


2D 


lA 


3B 


3B 


OA 


OD 


OD 


4378- 


3F 


4A 


49 


02 


00 


49 


29 


lA 


460B- 


29 


6D 


lA 


IB 


IF 


4A 


4D 


lA 


4100- 


02 


OO 


09 


4D 


lA 


3F 


3F 


6A 


4380- 


IF 


3F 


6A 


29 


15 


3B 


IB 


33 


4610- 


16 


IF 


4A 


4D 


lA 


IB 


IF 


OA 


4108- 


4D 


lA 


3B 


3F 


4A 


OD 


15 


IB 


4388- 


4D 


2D 


lA 


IF 


3F 


4A 


49 


02 


4618- 


2D 


OD 


02 


00 


09 


2D 


15 


IB 


4110- 


3F 


77 


69 


11 


00 


6D 


09 


lA 


4390- 


00 


49 


09 


lA 


3B 


3F 


6A 


09 


4620- 


IF 


53 


09 


OD 


lA 


3B 


IB 


4A 


4118- 


IF 


3B 


4E 


69 


lA 


IB 


IF 


OA 


4398- 


15 


3B 


3F 


37 


4D 


09 


lA 


3B 


4628- 


69 


lA 


3B 


16 


OE 


6D 


11 


OO 


4120- 


4D 


11 


3B 


IF 


73 


09 


2D 


02 


43A0- 


3F 


4A 


49 


02 


00 


09 


6D 


lA 


4630- 


4D 


29 


lA 


36 


16 


6E 


4D 


lA 


4128- 


00 


69 


09 


lA 


IB 


IF 


6E 


4D 


43A8- 


IF 


3B 


OA 


4D 


11 


IB 


3B 


77 


4638- 


IB 


3B 


6E 


4D 


lA 


36 


16 


6E 


4130- 


lA 


IB 


3B 


6A 


OD 


IS 


IB 


IF 


4360- 


4D 


U 


IB 


IB 


57 


49 


11 


00 


4640- 


09 


15 


00 


6D 


09 


lA 


16 


3B 


4138- 


73 


6D 


15 


00 


49 


OD 


lA 


IB 


43B8- 


49 


09 


lA 


IF 


3F 


6A 


29 


15 


4648- 


OA 


4D 


11 


IB 


IB 


57 


4D 


11 


4140- 


IF 


OA 


4D 


11 


IB 


IB 


53 


49 


43C0- 


3B 


IF 


73 


6D 


IS 


3B 


IB 


53 


4650- 


3B 


IB 


17 


2D 


2D 


15 


00 


4D 


4148- 


11 


IB 


IB 


53 


49 


11 


00 


09 


43CB- 


2D 


OD 


02 


OO 


4D 


09 


lA 


IB 


4658- 


29 


lA 


3F 


3B 


6E 


OD 


15 


36 


4150- 


4D 


lA 


IB 


3B 


6A 


49 


lA 


16 


43D0- 


IB 


6E 


6D 


lA 


IF 


3B 


6E 


09 


4660- 


IB 


33 


4D 


29 


lA 


IF 


IB 


6E 


4158- 


IB 


6E 


49 


lA 


IB 


3B 


4A 


4D 


43D8- 


IS 


3B 


IB 


73 


49 


11 


00 


09 


4668- 


09 


15 


00 


4D 


29 


lA 


IF 


IB 


4160- 


02 


00 


09 


4D 


lA 


3B 


IB 


4A 


43E0- 


4D 


lA 


IB 


16 


OA 


6D 


11 


IB 


4670- 


2E 


4D 


15 


36 


3B 


33 


4D 


2D 


4168- 


09 


15 


3B 


IB 


53 


49 


15 


IB 


43EB- 


3B 


53 


69 


11 


IB 


3F 


57 


49 


4678- 


lA 


IF 


IB 


6E 


09 


15 


00 


29 


4170- 


IF 


53 


69 


11 


00 


09 


4D 


lA 


43F0- 


11 


00 


49 


29 


lA 


16 


IB 


4A 


4680- 


6D 


lA 


IF 


IB 


6E 


09 


15 


36 


4178- 


IF 


IF 


OE 


2D 


OD 


lA 


3F 


3F 


43F8- 


29 


15 


3B 


IB 


53 


49 


IS 


3B 


4688- 


IB 


33 


4D 


29 


lA 


IF 


IB 


OE 


4180- 


OE 


2D 


OD 


lA 


IF 


IF 


4E 


4D 


4400- 


IB 


73 


2D 


OD 


02 


00 


4D 


09 


4690- 


2D 


OD 


02 


00 


2D 


6D 


lA 


IF 


4188- 


02 


00 


49 


09 


lA 


IB 


IF 


4A 


4408- 


lA 


3B 


IB 


6E 


4D 


lA 


IB 


3B 


4698- 


3B 


OA 


4D 


15 


IB 


3F 


S7 


4D 


4190- 


4D 


lA 


3F 


3F 


4E 


4D 


lA 


IB 


4410- 


6E 


4D 


lA 


3B 


IB 


4E 


49 


02 


46A0- 


11 


IB 


IB 


17 


6D 


09 


02 


00 


4198- 


IF 


4A 


49 


02 


OO 


49 


09 


lA 


4418- 


OO 


29 


4D 


lA 


IB 


IF 


4A 


4D 


46A8- 


29 


6D 


lA 


IF 


IB 


6E 


09 


15 


41A0- 


IB 


IB 


4A 


49 


lA 


IB 


IB 


4A 


4420- 


lA 


16 


IF 


4A 


4D 


lA 


3B 


3F 


46B0- 


36 


IB 


33 


OD 


OD 


15 


IB 


IF 


41A8- 


6D 


lA 


3B 


IF 


OA 


6D 


11 


00 


4428- 


4A 


49 


02 


00 


49 


09 


lA 


3B 


46B8- 


73 


6D 


15 


00 


2D 


6D 


lA 


IF 


41B0- 


49 


09 


lA 


IB 


IB 


4A 


49 


lA 


4430- 


3B 


6A 


OD 


15 


36 


3B 


33 


OD 


46C0- 


3B 


OA 


4D 


15 


IB 


3F 


57 


OD 


41B8- 


3F 


3F 


4E 


49 


lA 


IB 


IB 


4A 


4438- 


OD 


15 


3B 


3B 


73 


49 


11 


00 


46C8- 


OD 


lA 


IF 


3B 


2A 


4D 


15 


OO 


41C0- 


49 


02 


00 


49 


09 


lA 


16 


IB 


4440- 


49 


09 


lA 


3B 


IF 


2E 


4D 


15 


46D0- 


29 


6D 


lA 


IF 


16 


6E 


49 


lA 


41CB- 


4A 


49 


lA 


IB 


IB 


4A 


49 


lA 


4448- 


36 


IB 


33 


4D 


29 


lA 


IF 


IB 


46D8- 


3B 


3F 


4A 


09 


15 


36 


IB 


73 


41 DO- 


IB 


3F 


OA 


6D 


11 


00 


49 


09 


4450- 


4E 


49 


02 


00 


49 


09 


lA 


3B 


46E0- 


2D 


OD 


02 


OO 


2D 


2D 


15 


36 


41D8- 


lA 


IF 


IB 


4A 


69 


lA 


IB 


IF 


4458- 


3F 


6A 


09 


15 


3B 


IB 


33 


4D 


46E8- 


3B 


73 


69 


11 


16 


36 


53 


69 


41E0- 


OA 


4D 


11 


IB 


IB 


73 


49 


11 


4460- 


29 


lA 


3B 


3F 


4A 


49 


02 


00 


46F0- 


11 


IB 


3B 


53 


2D 


OD 


02 


00 


41E8- 


00 


29 


6D 


lA 


IF 


IB 


6E 


29 


4468- 


49 


09 


lA 


3B 


IF 


2E 


4D 


15 


46FB- 


4D 


29 


lA 


IF 


IB 


6E 


09 


15 


41FO- 


15 


3B 


38 


33 


6D 


29 


lA 


IF 


4470- 


3B 


IB 


37 


OD 


6D 


lA 


IB 


IB 


4700- 


3B 


IB 


33 


4D 


29 


lA 


IF 


16 


41F8- 


IB 


OE 


2D 


OD 


02 


00 


09 


4D 


4478- 


6E 


49 


02 


00 


49 


09 


lA 


IF 


4708- 


OE 


2D 


OD 


02 


00 


4D 


29 


lA 


42O0- 


lA 


IB 


3F 


4A 


4D 


lA 


IB 


IF 


4480- 


3F 


6A 


29 


IS 


36 


IF 


73 


6D 


4710- 


IF 


IB 


6E 


09 


15 


3B 


IB 


33 


4208- 


4A 


4D 


lA 


IB 


IF 


OA 


2D 


OD 


4488- 


15 


3B 


IB 


53 


49 


15 


00 


49 


47 18- 


4D 


29 


lA 


3B 


3B 


4A 


4D 


02 


4210- 


02 


00 


29 


6D 


lA 


IF 


IB 


4E 


4490- 


09 


lA 


3B 


IF 


2E 


4D 


15 


IB 


4720- 


00 


4D 


29 


lA 


IF 


IB 


6E 


09 


4218- 


09 


15 


IB 


3F 


53 


4D 


11 


16 


4498- 


IB 


33 


4D 


09 


lA 


IB 


IB 


4E 


4728- 


15 


36 


IB 


33 


OD 


OD 


15 


3B 


4220- 


IB 


33 


2D 


2D 


15 


00 


2D 


2D 


44A0- 


49 


02 


00 


49 


09 


lA 


3F 


3F 


4730- 


IF 


37 


4D 


29 


02 


00 


4D 


29 


4228- 


15 


3B 


IB 


53 


09 


OD 


lA 


3B 


44A8- 


6A 


49 


lA 


36 


3F 


4A 


09 


15 


4738- 


lA 


IF 


IB 


OE 


OD 


OD 


lA 


IB 


4230- 


IF 


4A 


09 


15 


3B 


IB 


73 


2D 


44B0- 


IB 


3F 


77 


49 


11 


00 


69 


09 


4740- 


IF 


OA 


OD 


OD 


lA 


IF 


IB 


6E 


4238- 


OD 


02 


00 


49 


OD 


lA 


3B 


IF 


44B8- 


lA 


IB 


3F 


OE 


4D 


11 


IB 


IB 


4748- 


09 


15 


00 


4D 


29 


lA 


IF 


IB 


4240- 


OA 


OD 


OD 


lA 


3B 


IB 


2E 


2D 


44C0- 


57 


4D 


IS 


IB 


3F 


53 


49 


11 


47S0- 


OE 


OD 


OD 


lA 


IB 


IF 


4A 


4D 


4248- 


2D 


lA 


3B 


IB 


4A 


69 


02 


00 


44CB- 


00 


49 


09 


lA 


IF 


IB 


6E 


09 


4758- 


lA 


IB 


IF 


4A 


4D 


02 


00 


2D 


4250- 


2D 


2D 


IS 


IB 


IB 


33 


2D 


6D 


44D0- 


15 


3B 


IB 


33 


4D 


2D 


lA 


IF 


4760- 


2D 


15 


36 


IB 


73 


09 


OD 


lA 


4258- 


lA 


IF 


IB 


4A 


09 


15 


3B 


IB 


44D8- 


3F 


4A 


49 


02 


00 


49 


09 


lA 


4768- 


IB 


IF 


OA 


4D 


11 


3B 


IB 


33 


4260- 


73 


2D 


OD 


02 


00 


29 


6D 


lA 


44E0- 


IF 


IB 


6E 


09 


15 


IB 


IF 


57 


4770- 


2D 


2D 


15 


00 


2D 


2D 


15 


3B 


4268- 


IF 


IB 


6E 


49 


lA 


3B 


3F 


6E 


44E8- 


OD 


OD 


lA 


IB 


IF 


4A 


49 


02 


477B- 


3F 


37 


2D 


2D 


15 


3B 


3F 


37 


4270- 


09 


15 


3B 


IB 


73 


2D 


OD 


02 


44F0- 


00 


49 


09 


lA 


IF 


IF 


&E 


OD 


4780- 


2D 


2D 


15 


3B 


3F 


37 


2D 


2D 


4278- 


00 


2D 


2D 


15 


3B 


IB 


53 


09 


44F8- 


15 


3B 


3B 


33 


OD 


OD 


15 


IB 


4788- 


15 


00 


00 










€ 



MOV1983 COMPUIE! 263 




'*"®xxonnection 



DISKETTE SPECIAL 

FREE PLASTIC LIBRARY CASE WITH PURCHASE OF EVERY BOX OF 10 

$24.95 

Personally labeled for THE SOFIWARE CONNECTION by one of the most respected producers of magnetic 
media, Each diskette is single-sided and certified double density at 40 tracks. To insure extended media life, 

each diskette is manufactured with a reinforced hub-hole, 

10 Boxes or more: $22.50/box 



ATARI® 



VIC 20 





Retail 


Our Pil« 


K-RAZY SHOOTOUT (Rom) 


S49.95 


$35X)0 


PAC MAN (Rom) 


S44.95 


$32.00 


MINER 2049er (Rom) 


S49.95 


$35.00 


GORF (Rom) 


S44,95 


S32.00 


DROIDS (Rom) 


S44,95 


$32.00 


NIGHT STRIKE (Rom) 


$44,95 


$32.00 


LUNAR LANDER d/C 2m 


S20,95 


$15.95 


STAR TREK 3.S c 32k 


S19,95 


$14.95 


SUNDAY GOLF C i6k 


S14.95 


$11.95 


CHICKEN D/C 16K 


S34,95 


S26.95 


TEMPLE OF APSHAI D/C 32K 


$39,95 


$29.95 


UPPER REACHES c 32k 


319.95 


$14.95 


CHRUSH, CRUMBLE & CHOMP D/C32K 


S29.95 


$23.95 


ZAXXON D/C 


S39,95 


$29.95 


CANYON CLIMBER D/C i6K 


$29.95 


$23.95 


POOL 1 ,6 D i8K 


S34.95 


$26.95 


All BABA D 32K 


S32.95 


$24.95 


JAW BREAKER D/C 16K 


S2995 


$23.95 


MOUSKAHACK D 32K 


534,95 


$26.95 


APPLE PANIC D/C 


S29.95 


$19.95 


SEA FOX D iSK 


S29.95 


$19.95 


BUG AnACK D/C 24K 


S29.95 


$20.95 


TEXT WIZARD d 32K 


$99,95 


$69.95 


SPELL WIZARD D iBK 


579,95 


$59.95 


COMPU-READ0 4BK 


529,95 


S20.95 


COMPU-MATH D48K 


539,95 


$29.95 


LEnER PERFECT d 24K 


$149,95 


$115.00 


QS FORTH D d8K 


579,95 


$59.95 


VtSICALC D 32K 


5250,00 


$165.00 



For Inside California and Other Inquiries Call 1-916-989-3174 







Retail 


Our Price 


SHAMUS (Rom) 




539.96 


$31.95 


P90TECT0R (Rom) 




543.95 


$35.95 


CROSSFIRE (Cass) 




$29.95 


$23.95 


CHOPLIRER (Rom) 




S39.95 


$31.95 


ASTROBLITZ (^om) 




539.95 


$31.95 


VIDEOMANIA (Rom) 




539.95 


$31.95 


TRASHMAN (Bom) 




$39,95 


$31.95 


APPLE PANIC (Rom) 




539.95 


$31,95 


INVASION ORION (Cass) 




524,95 


$19.95 


DATESTONES OF RYN (Cass) 




519,95 


$15.95 


SWORD OF FARGOAL (Cass) 




529,95 


$23.95 


MONSTER MAZE (Rom) 




539.95 


$31.95 


PLAHERMANIA (Rom) 




539,95 


$31.95 


VI CALC (Cass) 




$14.95 


$11.95 


HOME OFFICE 




S2995 


$23.95 


VIC FORTH (Rom) 




S5995 


$4795 


COMMODORE 64 




DRAW POKER (Cass) 




516.00 


$12.80 


COMPUTER FOOTBALL STRATEGY (Cos5> 


516.00 


$12.80 


PLANET MINERS (Coss) 




516.00 


$12.60 


COMPUTER STOCKS & BONDS (Coss) 


S2G.O0 


$16.00 


TEMPLE OF APSHAI (Osk) 




S39.95 


$31.95 


UPPER REACHES (D,sk) 




519.95 


$15.96 


CURSE OF RA (d,sk) 




519.95 


$15.95 


SWORD OF FARGOAL (Disk) 




529.95 


$23.95 


JUMP MAN (Dsk) 




539.95 


$31.95 


ZORK (Disk) 




S39.95 


$31.95 


DEADLINE (D,sk) 




539.95 


$31.95 


TURTLE GRAPHICS II CRom) 




559,95 


$47.95 


828-2838 


(For Placing Orders 
Outside California) 





MAIL ORDERS: For fast delivery, send certified check, 
money orders, or Visa or Mastercord number and 
expiration date, for total purchase price plus 1% or $2 
minimum for postage and handling. Add $5 for 
shipment outside the continental U.S. California 
Residents add 6% soles fox. 

COD: and Chargecard orders call 1-S00-626-2838. 
In California call 1-916-989-3174. 

Subject to stock on hand. Prices subject to change. 



Catalog free with any order or send S2 postage and 
handling and please specify computer type, 




* •n-connection- 

5133 Vista Del Oro Way Fair Oal<s, CA 95628 



NEWS^PRODUCTS 



Games For TRS-80 
Computers 

The Cornsoft Group has intro- 
duced four recreational software 
items for TRS-80 computers - 
Crazij Painter, Boiinceoids, 
Avenger, and MicroOwrd. Crazy 
Painter, Boiinceoids, and Az'cugcr 
are joystick-compatible arcade 
games. MicroClwrd is a music 
generation program. 

Crazy Painter requires the 
player to paint the screen com- 
pletely before moving on to the 
next skill level. This is compli- 



cated by a mischievous puppy, 
snakes, and "paint eaters" - all 
remove parts of the paint at dif- 
ferent times. The player must 
catch the puppy while avoiding 
the poisonous turpentine bucket 
and the dreadful snake. Crazy 
Painter is available for the TRS-80 
Models I and III. 

Bounceoids come crashing 
in from space, attracting alien 
natives with poison darts, off- 
world snakes, and shaking bugs. 
Players must blast the bounce- 
oids and eliminate all the other 
hazards to advance. During the 
challenge mode, the flying space 
flock adds suspense and excite- 



ment in a test of strategy, coor- 
dination, and targeting skills. 
Boiinceoids is available for the 
TRS-80 Models I and III. 

In Aivnger, your Pesticraft 
zeros in on the invasion of space 
pests. Take too long to clear the 
pests, and the mighty Avenger 
appears and attempts to destroy 
you. Droid-filled birds and 
waves of space pests combine 
for hours of tense aerial chal- 
lenges. Avenger is available only 
for the TRS-80 Color Computer. 

MicroChord facilitates the 
creation of original music or 
favorite tunes. This single pro- 
gram, in machine language. 



"■•"CQiDPu SEfySEi:.-' 

CARDBOARD 3 

An Economy Expansion Interface 

(Motherboard) 

For the VIC-20«' Personal 

Computer 

The CARDBOARD'3 " is an expansion inter- 
face designed la allow Ihe user to access more 
than one ot the plug-in-type memory or utility 
cartridges now available It will accept up to 3 | 
RAM or ROM cartridges at once. For example 

• 16k RAM - 16k RAM • 3li RAM 

• 16k RAM • Sk RAM • Super Expander 

• 16k RAM • 8K HAM • Vic-Mon 

• 16k RAM • 3k RAM • Programmers Aid 

• High quality TRW gold plated connectors 

• This board is fused 

• 90 day free replacement warranty covering ] 
everything exceot the fuse 

$39.95 

CARDBOARD 6 

An Expansion Interface for VIC'20* 

• Allows memory expansion up lo dOK 

• Accepts up to SIX games 

• Includes a system reset button 

• All slots are switch selectable 

• Daisy Cham several unils for even more 
versatility 

$87.95 




PUT SOME MUSCLE 
IN YOUR 

VIC 20 

16K RAM 
EXPANSION 

$69.90 

8K RAM 
EXPANSION 

$47.70 

•DIRECT FROM 
MANUFACTURER 

•HIGHEST QUALITY 
•LOWEST PRICE 
•90 DAY WARRANTY 

WHCENTURy'^ 
■ MICRO 

7881 La Riviera Dr. Suite 131 
Sacramento, CA 95826 



Add S2 for shipping & tiandling 

(Calltornia Residents add B% sales tax) 

DEALER INQUIRES WELCOME 



COMPUTER CASSETTES 

100% Error-Free • Fully Guaranteed 



-w 


W J. 


4;%m.m 









12 


24 


LENGTH 


PACK 


PACK 


C-05 


79<P 


69<P 


C-10 


89<F 


79<P 


C-20 


99<P 


89<;: 


Boxes .... 


26<P 


21$ 



UPS $3.00 Pkg. $18.00 Case 



C-10's 39<f 

(Mln. 500 Case Lot) 
w/labels ADO 4«, 
w/boxes ADD 13C 



^ FOR ORDERS ONLY 
\ 1-800-528-6050 - 
Extension 3005 

MICRO-80'- INC. 

2665-C Busby Road 
Oak Harbor. WA 98277 



MOV1983 COMPUTE! 266 



produces excellent two-note 
harmonics, with the aid of the 
easy-to-use music editor. Micro- 
Chord is available for the TRS-80 
Models I and III. 

The Contsoft Group 
6008 N. Kci/s/()»f Avenue 
huiiaimpolh, IN 46220 
(219)257-3227 

Memory Module 
For The VIC 

Apropos Technology has re- 
leased Ramax, a memory module 
with 27K bytes of static RAM 
and two expansion connectors 
for the VIC-20. 

Features include; 

- compatibility with any plug-in 
device for the VlC-20 

- completely switchable memory 
in 3K and 8K sections 

- a system reset switch 

- fuse protection for the memory 
and extension connectors 



- very low power usage (less 
than 150 ma. max.) 

~ fully self-contained 

- six-month factory warranty. 

The cost is $169, shipping 
included. 

Apropos Technology 

340 N. Uintnim, Suite 821'C 

CmmriUo, CA 93010 

(805)482-3604 



Voice Box II 
For Atari 

The Alien Group announces the 
Voice Box II, a programmable 
speech synthesizer for Atari 400/ 
800 computers. The Voice Box U 
requires a 32K disk system, and 
has the following features: 

• The ability to speak with 
inflection. 

• The ability to speak in foreign 
languages with correct foreign 

spelling as input. 



• The ability to sing with voice 
and three-part music. 

• A library of 30 famous songs. 

• A music system that allows the 
user to enter new songs. 

• Software that can convert the 
bottom two rows of the Atari 
keyboard into a piano with a 
range of 3'/2 octaves using the 
shift and control keys. 

• Programmable musical sound 
effects such as tremolo, vibrato, 
and glissando. 

• A singing huiuau face with lip- 
sync animation designed by Jerry 
White. 

•A talking or singing Alien face 
with software that allows the 
user to change the face as he 
sees fit. 

• A talk and spell program by 
Ron Kramer. Users can program 
any vocabulary for this spelling 
game. The program can speak in 
a foreign language, and the user 
must spell the correct word in 
English, or vice versa. 



Oliiinit Sales 



SERVING YOU 
SINCE 1947 



Telex: 67 34 77 Tall-Fre» f>hDne Otders: 
ToltfrBA Un CAi B0G-2S2-2T53 800-421-8045 (oui ot CA) 
Order Dfsks apen 6 dayi i week! 7:DD AM id 6:00 Ptt Mon-Sdt 
P.O, Bax 74S4b 216 Su. Oxioril Ave. Lo; Angeles. CA 90004 
Phont: 12131 7391130 Cable: 'OLYftAV'" LSA 



SS.OOOMO /nvffjtory #J *// 

limei. Cofp. ^cn. mvited. 

Good tiitifvcT to t¥»''itiil-ty, rhij *tf iupvrcrd*t 
al! prvviouT sdl, fab 0<Jf Mtfthauif. pnceM sub- 
ipct to cft*niW Without notice: Fior tet{tOf>nblf 
hicMl e'ron. sft Otdefl iUbfCl rp 

_ ^s.c- 



typograp\ 
Sfnd S2 iai SS toifign, 



thagA hndig SS.95. 
}fof ■ 



FRANKLIN ACE 1000 

Look what you get for $1399.95! 

G4K Apple compatible with more 
futures ttisn Apple 2+-«imes v 
with [lisk drive/eonttgller, 12" ^ 
green monitor, & word procsnor 

ATARI800L 

800-48 K computer 




"lot HEWLETT 
f!M PACKARD 

Personal Computer 
HP-75C 
(handheld) 
Re:$9g5.0Q 
Y/C; $799.95 



^gg95^ 



41S prog, recorder S 77.9S 
81 Qdiili drive 449.95 

SSO interftce module 189.95 



K commodore 




M!&2tt?i49»5 



COMMODORE64 

■HiliranillwiilH IWT.Th^ TRS«< MdAwkll 
It tm-«M Ita pal tHS.H ncWiif RF 1iM>liU<. 

TWICE THE COMPUTER 
FOR HALF THE PRICE! 



\ SK Pirtwut Camputi 



Mi^s^ 



1541 DitlcDrin 1379.95 Thsu periphtnk 
1S31 DitBrni C9.95 wrtrtvi'rAr/w 
1 5I5E Prjnttr 339.95 VIC-20 as wtll « 

ISM VlcModtm ii» Ccmmodort 64_ 

fmmtduti dtLntfy on ill htrm \aaA ibovi! 
Wi Iwrt in imrmout inwynt of nfrmn tor 
Dm VIC 20. 




Panasonic Cordless Phone $179.95 

$2^95 



ATARI 

Video Game 




NOW ONLY 



SANYO 15" 
Re:$325.0Q 



B&W Monitor 
Y/C: SI 79.95 



BMC 12" Green Monitor $99.95 



fiH RF modulitiii. FullcoliH griphm, 
upptf^owir am, munc & voice tynThnutf ntait. 

Free with purchase of one 64 at 
$495.00 you get one 12" Green 
Monitor or one Datasette or 
$1 00 oH on 1 541 Did< Drive 



$17995 



mduding FREE 
Donkey Kon^ 
C»fUirlte 



Qpt1 ixpanBon 
moduli for 
IHJng Atlri nftwiri- 
S79.9S 



THE HOTTEST COMPUTER PRINTER 
ON THE MARKET! 
These are ttie very best in dot matrix printers 
similar to Epson but faster, with more features 
ft lower prices including 1B0 days warranty 
instead of 90 days. Compalibie with Epson 
tables and iivterf aces. Immediate Deliverv 
ID" carriage •2.3K buffer 
too CPS Bi-directional logic seeking 
9 X 9 dot matrix - friction & tractor 
Proportional space font 
Bit image graphics 
Epson pin & plug compatible 
80-96-132 columris 
Your Cost:J379.95 
15" carriage 
136-163-233 columns 
Your CostiS499.95 
Call us for information. 



Commotlore 12" Color Monitor 
Y/C: $299.95 



Pearlcorder X-Ql 

PEARLCORDERhy Olympusj 
Model X-01 - 2 speed, LCD 

tape counter, memory, clock; 

camp, w/earphone, case, bitt. •^^'^ 
& more^Stigg. REta|l:K69.95 1^; 



Your LOW Cost: 599.95 



ATAR 1200XL Re- 
64K Computer $995.00 
Y/C: $699.95 



liBNQs Inslrunonts 
HomeComouter 

•your NET coti , ,_ Cr!e^^ 

iromTii Synthitlitc OFFER! 



1200 Pirlptliril Eipiniion Bdx 219.95 
1220 RS 232 Ciril 149.95 

12U Diili Controller Cird 199.95 

1250 Ei|i>n. Sys Diik Drive 319.95 

1269 Memory E»p. Cirri |32K) 239.95 

1270 P-Codc Cirri Irei). 1600) 199,95 
1 600 Tdiphone modem 1 79.95 
41 DO Monitor 319.05 
Emeniled Biw 79.95 LOGO 99.95 
Tl-tl Prorimtnilili Ciloililor tnJ5 

PLUS h— libriiY nluad it $45.04 
PC-100C Printer/plotter 159.95 



COMING THIS SPRING FROM Tl- 
TI-CC40 Compuler-typewriter style 
keyboard, EK RAM expandable to 
22K, portable, Can use TI-59 software! 

Re:$269,95 Y/C:S199.95 



TI-99/2 Computerw/IB bit processor, 
4.2K RAM expandable to 32K, screen 
ilisplay 2fl X 24, typewriter style key- 
board, Basic language & mate! 

Re:$99.95 Y/C:$89.95 



SONY CORDLESS TELEPHONE 

Model SPP'11 innercom, auto. 

red iaI, rechargeable & more. High quality 

unliiue Sony design. Y/C:S1 59.35 Sugg. Re: $299.95 




TIMEX TS-1000 

TimaxTS 1000 Computer ftrAU 
p»V us t74.95&grt 1*15.00 ^HM" 

rabite from Timex! W 

FREE RF moduiatoi (for TV hook-up) 

16K RAH Expansion $45.95 

Timex Thermal printer/graphics 94.9S 
Craig cnsette (program) recorder 59.95 

TIMEX SaftMMi (76 piiiniiH fir veal) 
SlKk DFtiw Anriyar tl-N 

IRA PtoRiw 15.9S 

R«l Eflm ImMimit AihIvbi 14.K 
Pinftnil FiM«ct ninwr 12,H 

Poitlolio Anhm '<.J| 

Budfttxr 16.H 

Drpnini '•.•* 

diKktisok M«u|» 1S.K 

irrd man ind man . . .CiH ml 



266 COMPimi MoyWB3 



Products for Commodore, Atari, Apple, and others! 



.t^ 



THE MONKEY WRENCH II 

A PROGRAMMERS AID FOR ATARI 800 

NEW AND IMPROVED - 18 COMMANDS 

PLUGS INTO RIGHT CARTRIDGE SLOT 



F^ 



^ ^^atvash;?!^ 



^5^ 



THE 

MDNKEV WRtNCH 

II 



^ 



$59.95 



If you are a person who likes to monkey around with 
the ATARI 800, then THE MONKEY WRENCH II is 
tor you!! Make your programming tasks easier, less 
time-consuming and more fun, Why spend extra 
hours working on a BASIC program when the 
MONKEY WRENCH can do it for you in seconds. 
It can also make backup copies of boot type 
cassette programs. Plugs into the right slot and 
works with ATARI BASIC cartridge. 
The MONKEY WRENCH provides 18 direct mode 
commands. They are: AtJTO LINE NtJMBERING - Pro- 
vides new line numbers wfien entering BASIC program 
lines. RENUMBER - Renumbers BASIC'S line numbers 
including internal references. DELETE LINE NUMBERS 
— Removes a range BASIC line numbers. 
VARIABLES - Display all BASIC variables and their current value. Scrolling - Use the 
START&SELECT keys to displayBASIC lines automatically. Scroti up or down BASIC pro- 
gram.FINDSTRING-Rndeuety occurrence of a string , XCHANGE STRING - Find every 
occurrence ofastnngandfeplaceitwittianoltierstnng, MOVE LINES - Move lines from 
one part of prog ram to anotfier part of program. COFV LIN ES — Copy lines from one part 
of program lo anotfier part of program, FORMATTED LIST - Print BASIC program in 
special line format and automatic page numbering. DISK DIRECTORY - Display Disk 
Directory. CHANGE MARGINS - Provides the capability to easily change the screen 
margins. MEMORY TEST — Provides the capability to test RAM memory. CURSOR 
EXCHANGE — Allovre usage of the cursor keys v^ithout holding flown the CTRL key. 
UPPER CASE LOCK - Keeps the computer in the upper case character set HEX CON- 
VERSION - Converts ahexadecimalnumberto a decimal number DECIMAL CONVER- 
SION — Converts a decimal number lo a hexadecimal number MONITOR - Enter the 
machine language monitor 

In addition to the BASIC commands, the Monkey Wrench also contains a machine 
languagemonitorwithie commands used to interact with the powerful features of the 
6502 microprocessor 



x^^ 



Ml 



VIC RABBIT CARTRIDGE 
AND CBM 64 RABBIT CARTRIDGE 



"High-Speed 

Cassette 

Load and Save!" 




$39.95 

(includes Cailridge 
and Manual) 



Expansion Connector 
on the VIC Cailridge 



"Don't waste your Life away waiting to LOAD and SAVE 
programs on Cassete Deck." 

Load or Save 8K in approxiinately 30 seconds! Try 
it — your Un-Rabbitized VIC takes almost 3 minutes. 
It's not only Fast but VERY RELIABLE. 

Almost as fast as VIC Disk Drive! Don't be foolish - 
Why buy the disk when you can get the VIC Rabbit 
for much, much less! 

Easy to install — it just plugs in. 

Expansion Connector on rear. 

Works with or without Expansion Memory. 

Works with VIC Cassette Deck. 

12 Commands provide other neat features. 

Also Available for 2001 , 4001 , and 8032 



Standard Terminal Communications Package 

•PI^O'IOD OOA CP<Dl>D2 BELL ^ IJ 30 00 10 ia:36 



Don'( 5«l1le lof noft-standard Communications Prolocol! 
Access Micro Net. Source. Bulletin Boards. Local Main- 
frame, etc 

I ■ Compleit Package - Includes RS232 Inter 
/ lace Board and software (does not include 
r modemi 

- • Communicates in Industry Standard ASCJI 
^ • Uptoad/DowrtloaO to/from Chsk 

* Automatic File rranslation 

• Can tte conlrolled from keytward or user sup- 
OlieC bas^c oi macfMne language program 

Specify 3.0 or 4.0 ROMS or 8032 Commodore Computer 
4040 or 8060 or PEDtSK II Disli or CBM64 on 1S41. 




Price: $129.95 



ATARI AND PET 
EPROM PROGRAMMER 

Programs 2716 and 2532 
EPROMs. Includes hardware 
and software. PFT = $75.00- 
ATARI (includes sophisticated 
riftachjne language monitar) = 
$119.95 



• j^jr,M> 




Prownier Printer . Eiceiient dot raattKptini Parallel « S489 00 
Serial » SMO 00 IEEE - S5a9 00 



PET BASIC SCROLL PROGRAM 

Scroll thru Basic Programs using cursor 
up/down keys. Specify computer. $6.00 on 
cassette, $9.00 on diskette. 



65C02 MAE 
Same as our MAE but enhanced for the new 
65C02 Opcodes. Turns your computer into a 
d evelopment system for the new ROCKWELL 
65C02 Microprocessor. $200.00 — Specify 
Computer. 



6800 CROSS ASSEMBLER 

A Cross Assembler based on the MAE that 
runs on the PET, AppI e, or Atari but assembles 
opcodes for the Motorola 6800 microproces- 
sor. Turns your computer into a development 
system for the Motorola 6800 Microprocessor 
$20000 — Specify Computer 

ATARI and VIC Cartridges 

EHS can supply large quantities of ATARI and 
VIC Cartridges for software developers. If you 
need cartridges, call for pricing. 




TRAP 65 

TRAP 65 IS a (laidwire device tliaf 

piggsmio yourBSWs soci<el, Ptevents 

execution of unimplemenled opcodes 

and provides capatHity to extend ttie 

macliines' instruction ser 

ForPET/APPLE/SVM 

ReCuceO from St49 95 to S69 95 



DC Hayes Smart f^odem = S235 00 | 



DC Hayes Micro Modem il = i2m 00 



Rana Disk Dine - 375 
4 Drive Controller - 114 



More than just an Assembler/Editorl 



Now for the "64" 


\ 


m m Ik. r 






A 


ivyi/it- 




IVIMl 


Ifs a 


A 




for 


Professionally 






PET 


Designed 




APPLE 


Software y \l 


ATARI 


Developmenl W^Tk 


$*6ft8S 


System ...JHIL. 


New 


v^^B 


Price 


mg^^M 


$99.95 


Blast off with the software used 


on the space 


shuttle project! 









■ Qeitqneti to impj-cws Programmar Pc&duClivmty 

■ Similar syntax and commands — No fwed lo fatearn 
pOCuliar synlaxfls ar>d commancts Mhen you go 
from PET 10 APPLE 10 ATARI 

* Coresident AssemblerfEdilor — Ua no^ io load 
IhsEditortheniheAs&ernbldf ihen ihaEdiior. ate 

» AisojncludflsWofdPfOCflSior, flalocalingLnacJer 
and much rr^ocfl 

■ Options EPROM Prog ram iTWr. unimplarnaniiid 
Opcode circuitry 

- STILL NOT CONVINCED S«ndkyffM»pocsrw« 



5 )i INCH SOFT 
SECTORED OISKEHES 

Highest qiulity. We use them on 
our PETs, APPLES, ATARIs, and other 
computers. S22.5(W1 or M4.5O/20 




EPROHS 2716 = $4.502532 = J7,50 

Over 40 ComtBodore Proarams by Balttr (on ^ 




May 1983 COMWIE! 267 



• The screen never blanks oiil 
while talking or singing. 

• Singing or speaking sub- 
routines can be incorporated 
into your programs, requiring as 
little as 100 bytes of RAM plus 5 
bytes for each word. 

• Sound comes out of the TV - 
no extra components are re- 




Speech Synthesizer with Singing Human Face